Conversión de Raspberry Pi en Google Home


Gracias a que se  liberó el SDK del Google Assistant , ya se  puede usar Google Home en  Español entre otros nuevos idiomas  con cualquier hw que los permita ! Así que ahora es posible montar nuestro propio Google Assistant en una Raspberry Pi, en pocos minutos, con un micrófono y un altavoz, tendrá a una Raspberry Pi lista para atender sus peticiones!

Ideal para ponerla en el salón o cualquier sitio escondida, con un buen micrófono omnidireccional, podremos hacerle consultas en nuestro propio idioma y medianamente nos las esquivará correctamente , Por cierto a parte del Español, también soporta Inglés, Alemán, Francés, Italiano y Japonés. 

El proyecto se llama AIY que resulta de la mezcla de AI (inteligencia artificial en sus siglas en inglés, Artificial Intelligence) y DIY (hazlo tú mismo, en sus siglas en inglés, Do it Yourself).

Echemos un vistazo a lo que necesitamos .

  • Raspberry Pi 3  con fuente de alimentación y tarjeta MicroSD
  • Micrófono USB. Se puede  utilizar el micrófono incluido en algunas cámaras web para las pruebas. La gran ventaja del mini micrófono es la potabilidad del prototipo pero cualquier producto similar hará el trabajo de forma satisfactoria.
  • Altavoces con entrada de audio de 3,5 mm  Aunque inclusive unos auriculares de cable son más que suficiente para realizar las pruebas, idealmente podremos contar con algún tipo de altavoz equipado con conector de 3.5mm para obtener una mejor experiencia de usuario
  • Ratón y teclado USB

 

Instalando el SO

Para instalar el software necesitamos nueva imagen descargada a partir del sitio  oficial Raspbian ,y flashearla en la microSD con un ordenador:

 

raspbian

 

Una vez descargada y descomprimida  la imagen correspondiente  en su ordenador siga los siguientes pasos:

  • Inserte la tarjeta SD en el lector de tarjetas SD  de su ordenador comprobando cual es la letra de unidad asignada. Se puede ver fácilmente la letra de la unidad, tal como G :, mirando en la columna izquierda del Explorador de Windows.
  • Puede utilizar la ranura para tarjetas SD, si usted tiene uno, o un adaptador SD barato en un puerto USB.
  • Descargar la utilidad Win32DiskImager desde la página del proyecto en SourceForge como un archivo zip; puede ejecutar esto desde una unidad USB.
  • Extraer el ejecutable desde el archivo zip y ejecutar la utilidad Win32DiskImager; puede que tenga que ejecutar esto como administrador. Haga clic derecho en el archivo y seleccione Ejecutar como administrador.
  • Seleccione el archivo de imagen que ha extraído anteriormente de Raspbian.
  • Seleccione la letra de la unidad de la tarjeta SD en la caja del dispositivo. Tenga cuidado de seleccionar la unidad correcta; si usted consigue el incorrecto puede destruir los datos en el disco duro de su ordenador! Si está utilizando una ranura para tarjetas SD en su ordenador y no puede ver la unidad en la ventana Win32DiskImager, intente utilizar un adaptador SD externa.
  • Haga clic en Escribir y esperar a que la escritura se complete.
  • Salir del administrador de archivos  y expulsar la tarjeta SD.
  • Ya puede insertar la SD en su Raspberry Pi en el adaptador de micro-sd , conectar un monitor por el hdmi , conectar un teclado y ratón en los  conectores USB, conectar la  con un cable ethernet  al router  conectividad a Internet y finalmente conectar la alimentación  para comprobar que la Raspeberry arranca con la nueva imagen

 

Cuando acabamos de flashear la tarjeta la colocamos en la Raspi y ya podemos empezar. Para arrancar la Raspberry Pi 3 con el Voice Kit vamos a necesitar un monitor con cable HDMI y un teclado con ratón. Conectamos todo y le damos energía a la Raspi.

El primer inicio del sistema puede tardar varios minutos. El sistema que corre en la Raspberry Pi es una versión de Debian modificada especialmente para este dispositivo y que se llama Raspbian. Debian es una de las distribuciones más extendidas de GNU/Linux y en la que se basan distribuciones tan famosas como Ubuntu.

Una vez tengamos el escritorio activo, arriba a la derecha vamos a poder conectarnos a nuestra red Wi-Fi entre los símbolos del Bluetooth y del volumen. 

Respecto al micrófono usb

Dado el precio y el tamaño, se necesita  un micrófono funcional que sea capaz de captar voces cercanas o grandes sonidos pero   sin gastarse una fortuna  requiriéndose  un micrófono  usb  que sea  reconocido y funcione con Raspbian en una Raspberry Pi3( por  ejemplo el modelo  RRunzfon de kinobo)

Este tipo de micrófonos no son de alta fidelidad de modo que cuando escuche las reproducciones está claro que hay mucha estática a menos que esté hablando directamente con el micrófono, pero para este proyecto  lo importante es que sea  capaz de funcionar para el reconocimiento de voz utilizando la compilación Alexa Raspberry Pi.

Es interesante instalar la activación “siempre encendida” para no tener que presionar un botón para activarla, y pero dadas  las características de este modesto micrófono  solo  funcionara   si está cerca de este

Dado el tamaño y el precio, esta es una de las maneras más fáciles de agregar un micrófono por menos de $ 10, pero si está esperando un audio de alta calidad, es mejor que busque otras opcion. Para aquellos que buscan un micrófono decente para uso diario, existen mejores opciones en cuanto a calidad de sonido. (lo que hace que este micrófono sea genial es lo pequeño y económico que es)

Para las personas que buscan probar Google Assistant  con  Raspberry Pi, este micrófonono funciona con RPI v1, pero sí funciona con RPI v3 de fábrica. Cuando lo conecta al puerto USB, se detecta automáticamente y puede verlo en la salida “arecord -l“.

Bajo el sistema operativo Linux, parece que el sonido grabado es un poco bajo. Es posible que necesite normalizar (aumentar la ganancia) en el sonido usando un programa como mp3gain, ffmpeg, sox, etc. o mejor aún aumentar la ganancia en el receptor usando pulseaudio. Si eleva el volumen a un nivel alto, obtendrá una gran cantidad de estática, que es de esperar.

 

 

 

 

Prueba de sonido

Usaremos una Raspberry Pi 3 con Raspbian instalado y actualizado, lo primero será verificar que el audio nos funciona bien, tanto el del micrófono como los altavoces por donde queremos sacar el sonido ,para ello editamos nuestro fichero de configuración de audio ‘~/.asound’ y especificamos el micrófono que estamos usando, en este caso un USB específico, pero también podríamos usar el micro de una webcam, así como el audio que me lo saque por la predeterminada

Antes de continuar pues  debemos configurar el sistema de audio en la Raspberry Pi.

  1. Encontrar los dispositivos de grabación y reproducción.

    1. Coloque el micrófono USB en la lista de dispositivos de hardware de captura. Anote el número de tarjeta y el número de dispositivo.

      arecord -l
    2. Coloque el altavoz en la lista de dispositivos de hardware de reproducción. Anote el número de tarjeta y el número de dispositivo. Tenga en cuenta que el conector de 3,5 mm se etiqueta típicamente o (no). Analogbcm2835 ALSAbcm2835 IEC958/HDMI

      aplay -l
  2. Crear un nuevo archivo llamado .asoundrec  en el directorio home(/home/pi). Asegúrese de que tiene las definiciones de derecho esclavo para micrófono y altavoz; Utilice la configuración  a continuación pero cambie <card number><device number>  con el número que anotó en el paso anterior. Hacer esto para ambos y..asoundrc/home/pi<card number><device number>pcm.micpcm.speaker

    pcm.!default {
      type asym
      capture
    .pcm "mic"
      playback
    .pcm "speaker"
    }
    pcm
    .mic {
      type plug
      slave
    {
        pcm
    "hw:<card number>,<device number>"
     
    }
    }
    pcm
    .speaker {
      type plug
      slave
    {
        pcm
    "hw:<card number>,<device number>"
     
    }
    }
  3. Verificar esa grabación y la reproducción del ejemplo:

    1. Ajustar el volumen de reproducción.

      alsamixer

      Pulse la tecla de flecha hacia arriba para ajustar el volumen de reproducción nivel a alrededor de 70.

    2. Reproducir un sonido de prueba (se trata de una persona que habla). Presione Ctrl + C al hecho. Si no se oye nada cuando se ejecuta esto, Compruebe la conexión del altavoz.

      speaker-test -t wav
    3. Grabar un clip audio corto.

      arecord --format=S16_LE --duration=5 --rate=16000 --file-type=raw out.raw
    4. Compruebe la grabación por reproducirlo. Si no se oye nada, puede que necesite registrar el volumen de grabación. alsamixer

      aplay --format=S16_LE --rate=16000 out.raw

    Si están trabajando la grabación y reproducción, ya se ha configurado el  audio. Si no es así, verifique que el micrófono y el altavoz están correctamente conectados. Si no es el problema, intente un diferentes micrófono o altavoz.

    Tenga en cuenta que si tiene un monitor HDMI y un altavoz de jack de 3,5 mm conectado, usted puede reproducir audio por  cualquiera de los dos. Ejecute el siguiente comando:

    sudo raspi-config

    Ir a Opciones avanzadas > Audio y seleccione el dispositivo de salida deseada.

 

Activación servicio

Para activar el servicio nos iremos  a la consola de las Acciones de Google, nos validaremos con una cuenta de Google válida y crearemos un nuevo proyecto de Google Cloud Platform,.Con la API de Google Assistant instalada en nuestra Raspberry accederemos para realizar consultas y el proyecto nos mostrará los datos sobre los consumos.

En primer lugar nos iremos  a la consola de las Acciones de Google, en https://console.actions.google.com, deberemos validarnos con una cuenta de Google válida y crear un nuevo proyecto de Google Cloud Platform, para ello pulsamos en “Add/Import project”

Si no tiene ningún proyecto creado, nos aparece una ventana para  aceptar las condiciones de servicio. Es importante en este punto no olvidar  si queremos cambiar el idioma a español   para las Acciones  así como  seleccionar nuestro País, 

 

Tenemos que tener en cuenta  que el máximo de proyectos gratuitos es 3 ,por lo que  no podremos añadir nuevos, así que una opción es eliminar proyectos antiguos o incluso seleccionar alguno de estos proyectos antiguos de Google App Engine  como origen  de automatización ( ese es el caso de nuestro ejemplo “soloelectronicossalva”)

En caso de no tener ningún proyecto en la nube de Google ,deberemos  indicar el nombre del Proyecto (recordar que  aparecerá un combo si tiene ya varios proyectos creados)

Ahora tenemos que habilitar la API de Google Assistant API para nuestro proyecto , por lo que nos iremso a  https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview y daremos al boton de Habilitar . Si no estamos situados en nuestro proyecto  seleccionamos del combo nuestro proyecto y pulsamos en “Habilitar”,(API > Enable API > Google Assistant > Enable)

 

Y al pulsar el botón  quedara habilitado el API  de Google Assistant para nuestro proyecto

 

 

Observe que no es completamente gratuito, estando limitado a 500 peticiones al día  con un máximo de 60 peticiones/minuto , aspectos que podemos estudiar en el menú  de Cuotas

Ahora ya podríamos ir a registrar nuestro dispositivo! Vamos de nuevo a la Consola, en https://console.actions.google.com/
Ir a “Device registration” > “Register Model” y lo crearíamos

 

En caso de haber importado un proyecto que ya teníamos, el proceso es diferente, pues repetiremos las dos opciones primeras de Add/Import  , pero esta vez en el menú que nos aparece seleccionaremos  Device registration” > “Register Model” y lo creariamos (la url seria del tipo https://console.actions.google.com/u/0/project/proyecto_importado/deviceregistration/)

 

 

En ambos casos, llegado a este punto, pulsaremos al botón   “Device registration

 

 

 

Tendremos que ponerle un nombre o ‘Product Name’ (que anotaremos), un nombre del fabricante o ‘Manufacter Name’  y seleccionamos si queremos algún tipo de dispositivo, que en nuestro caso al ser una raspberry Pi 3 lo dejaremos en ‘Auto’, pulsamos en “Register Model”,

 

 

 

 

Nos toca ahora descargar el fichero con los credenciales de acceso al servicio de Google Assistant, pulsamos en “Download OAuth 2.0 credentials” y los guardamos en una ruta de nuestro ordenador que nos sea fácil de recordar

Ahora   copiaremos   dichos archivo  a la Raspberry Pi  en la ruta  /home/pi,

 

 

En este ultimo paso , es interesante las opciones que nos ofrece:

  • Brillo: Este rasgo cubre cómo controlar el brillo de un dispositivo. La configuración de brillo absoluto se encuentra en un rango normalizado de 0 a 100 (las luces individuales pueden no ser compatibles con todos los puntos del rango según su configuración de LED). 
  • ColorSpectrum Este rasgo pertenece a cualquier dispositivo que pueda establecer un espectro de color. Esto se aplica a las bombillas de color “completas” que toman rangos de color RGB. Las luces pueden tener cualquier combinación de ColorSpectrum y ColorTemperature, las luces de acento y las tiras de LED solo pueden tener Spectrum, mientras que algunas bombillas de lectura solo tienen Temperatura. Las bombillas básicas, o luces tontas en enchufes inteligentes, no tienen ninguno.
  • Temperatura del color: Este rasgo pertenece a cualquier dispositivo que pueda ajustar la temperatura del color. Esto se aplica a las bombillas de “calor” que tienen un punto de color en Kelvin. Esta es generalmente una modalidad separada de ColorSpectrum, y es posible que haya puntos blancos disponibles a través de la temperatura que Spectrum no pueda alcanzar. Según los rasgos disponibles, Google puede elegir el modo apropiado para usar según la solicitud y el tipo de luz (por ejemplo, si las luces de la sala de estar están en blanco podrían enviar comandos de temperatura a algunas bombillas y comandos de espectro a tiras de LED).
  • Muelle: Este rasgo está diseñado para dispositivos auto-móviles que pueden ser ordenados a regresar para la carga. En general, estas son aspiradoras robóticas actualmente, pero esto también se aplicaría a algunos drones, robots de entrega y otros dispositivos futuros. 
  • Encendido apagado :La funcionalidad básica de encendido y apagado para cualquier dispositivo que tenga activado y desactivado el binario, incluidos enchufes e interruptores, así como muchos dispositivos futuros. Tenga en cuenta que los termostatos tienen una configuración de ‘modo’ expandida, que es un interruptor de múltiples vías que incluye encendido y apagado, pero los termostatos generalmente no tienen esta característica. 
  • StartStop :Este rasgo cubre iniciar y detener el dispositivo. Iniciar y detener un dispositivo cumple una función similar para encenderlo y apagarlo. Los dispositivos que heredan este rasgo funcionan de manera diferente cuando se encienden y cuando se inician. Algunas lavadoras, por ejemplo, pueden encenderse y modificar sus configuraciones antes de comenzar a operar.
  • Ajuste de temperatura : Este rasgo cubre el manejo tanto del punto de temperatura como de los modos. 

Para  nuestro ejemplo no seleccionaremos ninguna de esta opciones por el momento y pulsaremos  “SaveTraits

 

Nos debe aparece ahora  al entrada    con la configuración definida:

 

 

Si pinchamos en la entrada  podemos cambiar algunos de los parámetros ya definidos ( no olvidar darle al botón de “save“) 

 

 

 

 

Grabamos el dispositivo que acabamos de registrar, pulsando en “SAVE”,

 

 

Configruacion de la Raspberry Pi

 

Bien, ahora en la Raspberry Pi configuraremos el entorno virtual de Python para aislar el SDK y sus dependencias de los paquetes Python del sistema, nos escogemos la opción de Python 3:

sudo apt-get install python-dev python-virtualenv

virtualenv env –no-site-packages

env/bin/python -m pip install –upgrade pip setuptools wheel

source env/bin/activate

Instalamos las dependencias necesarias además de  Google Assistant SDK que nos permitirá tener Google Assistant corriendo en la Raspberry Pi:

sudo apt-get install portaudio19-dev libffi-dev libssl-dev libmpg123-dev


Mediante pip instalamos la última versión de Python en el entorno virtual:

python -m pip install --upgrade google-assistant-sdk[samples]

Instalamos o actualizamos la herramienta de autorización:

python -m pip install --upgrade google-auth-oauthlib[tool]

 

Ahora generamos los credenciales para ejecutar los ejemplos, usaremos el fichero JSON que nos hemos descargado previamente:

google-oauthlib-tool –scope 

https://www.googleapis.com/auth/assistant-sdk-prototype –scope

 https://www.googleapis.com/auth/gcm –save –headless –client-

secrets /home/pi/client_secret_xxxx.apps.googleusercontent.com.json

 

 

Si todo es correcto, nos pondrá algo como:

Please visit this URL to authorize this application: ....
 

Copiamos la URL y vamos a ella con un navegador que esté validado con nuestra cuenta de Google. Tras permitir el acceso o nos dará un código de autenticación que debemos pegar en la shell.

Y ahora, ya estamos listos para probar un ejemplo!

En el mismo entorno virtual, ejecutamos el siguiente comando indicando nuestro ID de Proyecto y nuestro ID de modelo, En caso de no haber  anotando estos datos , ambos estan  en la Consola de Actions de Google buscando en las opciones generales del proyecto y del dispositivo.

Si esta todo OK ejecutamos el siguiente comando y quedará listo para que hablemos con el Assistantar:

 

  googlesamples-assistant-hotword --project_id entrada-txarlatana --device_model_id entrada-txarlatana-entrada-xxxx

 

Por cierto, para cambiar el idioma de nuestro Asistente, lo haremos directamente con nuestro teléfono móvil, con la app del Assistant que supongo la tendréis instalada (y si no os la instaláis :P, la abrís, pulsamos arriba en la brújula, y en la siguiente pantalla en Explorar debemos ir a “Ajustes”,

En Ajustes debemos buscar en Dispositivos el dispositivo que hemos registrado antes, lo seleccionamos, y ahí ya le podremos dar acceso a más datos nuestros a los señores de Google o seleccionar el idioma que queremos para interactuar con el Assistant!

 

 

MEJORA DEL MICRÓFONO 

Finalmente, dependiendo de la calidad de tu micrófono, notará que tiene algunos problemas a la hora de escucharle. En lugar de gritar  cada vez que quiera usarlo, lo que haremos será regular el micrófono mediante la línea de comandos una vez más.

  • Introduzca  en la termina ssh  el siguiente comando:
     alsaixer
  • Pulsee F6 para seleccionar un USB diferente. Use, las flechas para seleccionar tu micrófono.
  • Usa las flechas para aumentar el volumen de captura.
  • Cuando esté satisfecho con el volumen, pulse  ESC para salir.
  • Escriba el siguiente comando para hacer permanentes los cambios.
     sudo alsactl store

Ahora será capaz de comunicarte con su Echo casero hablando de manera normal   en lugar de gritando. Desde esta misma pantalla también se puede cambiar el volumen por defecto si lo necesitara.

 

Tenemos el servicio montado bajo una Raspberry Pi, si volvemos a ejecutar el ejemplo anterior estará el Asistente en nuestro idioma pero  tendremos que constantemente pulsar Enter o decir ‘OK, Google’ independientemente de los ejemplos que tenemos para interactuar.

Si no nos  interesa que el micrófono esté siempre escuchando y así también evitar la necesidad de decir ‘OK Google’ todo el rato, mediante un script  en c-shell   podemos   iniciar  o detener el Assistant

google_assistant_para.sh

cd /home/pi/

source env/bin/activate

nc -l 12345 | /home/pi/env/bin/python3 /home/pi/env/bin/googlesamples-assistant-pushtotalk –project-id txarlatana –device-model-id txarlatana-pitxarlatana-xxxx &

 

google_assistant_para.sh

pkill python3

pkill google

pkill nc

 

 

Mas información en  https://developers.google.com/assistant/sdk/guides/library/python/

 

 

 

 

 

 

 

Como ver los canales de la TDT en su movil


Recientemente   han salido al mercado pequeños sintonizadores de TDT  que podemos conectar mediante el conector OTG a nuestro dispositivo Android , y gracias a un  sw de recepción de TDT podremos ver en nuestro equipo Android los canales de DVB-T que nos corresponda a nuestra región

Aunque la idea pueda parecer fantástica , lo cierto es no todos los fabricantes especifican que se requerirá de una buena antena  así como de  una buena recepción de señal de RF  para poder visionar sin problemas  la mayoría de los canales disponibles  lo cual no siempre es fácil de tener 

Por ultimo hay dos inconvenientes importantes, en primer lugar el   precio del dispositivo ( un receptor  de  calidad suele rondar  los 50€) y en segundo lugar  debido a que la conexión se hacer a través del propio OTG , el terminal  Android  consumirá un extra de batería  acortando con ello  la autonomía 

Vemos como los sintonizadores de TDT para Android no son ninguna panacea   si bien no consumirán datos  aunque con un alto coste del aparato , de  modo que nos preguntamos si es posible disfrutar de estos canales en nuestro terminal android sin ningún hardware adicional

Conceptronic CTVDIGANG - Receptor  con Android, color negro

Pues querido lector ,  en efecto se  pueden visionar  los canales de DVT-T de su región  gracias al fantástico reproductor multimedia multiproposito  Kodi   y unas simples actuaciones   , asi  que veamos paso a paso como hacerlo

 

Instalación del sw

 

Lo primero es instalar Kodi en su smartphone o tableta Android para que así te sirva como reproductor multimedia de emisiones online. En sí Kodi no es más que eso, un reproductor. Abierto, open source y administrado por la XBMC Foundation para que sea lo más universal posible.

Kodi es tan abierto y libre de piratería que se puede descargar libremente desde la Google Play Store, para ello  baste con que lo busque en Google  Play o  bien  pulse sobre el siguiente enlace.

https://play.google.com/store/apps/details?id=org.xbmc.kodi

 

La versión oficial Kodi no contiene ningún contenido de ningun tipo  lo que significa que se debe proporcionar su propio contenido desde una ubicación de almacenamiento local o remoto, DVD, Blu-Ray o cualquier otro soporte de medios de comunicación por parte del propietario. Además Kodi le permite instalar plugins de terceros que pueden proporcionar acceso a contenido que está disponible gratuitamente en la página web oficial del proveedor de contenido. Cualquier otro medio de observación de  contenidos ilegales  que de otro modo se pagaría  no recibe la aprobación  por el equipo de Kodi.

Una vez hayamos instalado Kodi en nuestro terminal  veremos uan panatlla similar a la siguinte:

 

Captura de pantalla



Ahora lo que haremos es importar una lista IPTV o de emisiones a través de Internet. Dicha lista es de canales públicos, por  lo que en ningún momento se tendrá acceso a canales a los que se puede acceder previo pago

Para añadir los canales de televisión en abierto  a su Kodi solo necesitas realizar los siguientes pasos:

Acceda  desde un pc  a  desde  un navegador al siguinte en lace    https://github.com/LaQuay/TDTChannels ( también buscando en Github tdtchannels)   . A continuación  descargue la lista de canales M3u8 completa  pulsando en el link Descargar el .m3u8 completo.
El fichero no es demasiado grande /48,5kb)  y se llama  channels.m3u8  y debera copiarlo en la sd de nuestro terminal Android ( móvil o tableta)



Ahora en el terminal abra Kodi y despliegue el menú “Add-ons” del lateral.Pulse en “My add-ons” para bucear en los añadidos que vienen de serie con Kodi

 Busque “PVR clients” y localize “PVR IPTV Simple Client” y pulse en él.

Ahora pulse el boton “Configure” .( aparecen una serie de botones deslizantes)




En la pestaña “General” vaya  a “Location” y en el combo seleccione  Local Path /include local  netwoek   ya que por defecto es remote Path (internet address)

Pulsar ahora abajo de la pestaña de location en M3U Play List Path y  navegue por el  sistema de  ficheros  , busque el archivo M3u8 que descargo desde su pc  a la sd  y selecciónelo

Finalmente pulse ok a la derecha de  la ventana del todo




Ahora de vuelta  a la ventana de configuración  asegúrese  de marcar como “Enable” el cliente IPTV que estaba configurando pues por defecto incluso habiendo seleccionado el fichero m3u es disable. En cuanto lo pulse vera que automáticamente se cargan los canales de la lista m3u.





Finalmente ,   ya solo tiene que volver al menú principal de Kodi y entrar en “TV”: en seguida  debería  ver que están  accesibles todos los canales de la TDT , lo cuales  con una pulsación podemos disfrutar viendo su contenido en tiempo real desde nuestro terminal movil.




La visualización de los canales está supeditada a las conexiones de red y también a que los canales permanezcan activos pues es habitual que algunos se caigan de la emisión, por lo que debe  actualizar esta lista M3u8 conforme se actualice en el GitHub.

Por cierto dado que Kodi  esta disponible para un amplia cantidad de plataformas  también usando de los sencillos pasos que hemos comentado  , también podremos disfrutar de estos desde otros dispositivos como por ejemplo nuestro pc 



 

Microscopios para su uso en electronica


Es un hecho cierto que los componentes electrónicos son cada vez mas pequeños , habiéndose prácticamente generalizado el uso de las versiones de estos componentes en formato SMD ( cuyas  siglas en ingles corresponden a ” dispositivo de montaje superficial” ) . Estos componentes, aunque benefician al factor de forma donde se inserta la placa de circuito impreso  , por desgracia por su pequeño tamaño muchas veces son realmente difíciles de reparar, ajustar  o mejorar   a simple vista .

Ante el problema de no poder ver con  visión directa estos montajes , lo primero que se nos ocurre siempre es el uso de lentes de aumento con diferentes graduaciones para poder llegar a ver con detalle nuestros montajes, pero desgraciadamente estas al ser de graduaciones fijas tienen un alcance limitado y no suelen ser compatibles con la mayoría de las gafas correctoras, pero afortunadamente también , existen muchas soluciones comerciales disponibles siendo lo mas habitual el uso de Microscopios USB

Desgraciadamente muchos de estos microscopios de bajo coste no suelen estar a la altura sobre todo para el uso en electrónica y normalmente el resultado suele ser un poco decepcionante, no por los mecanismos de la lente y las distancia focales que suelen ser adecuados, sino por el tipo de sensores CMOS que llegan como máximo a alcanzar las resoluciones de 640 por 480 y con características de la luz muy pobres, razón por  la que muchos usuarios optan por fabricarlos por si mismos con cámaras de mayor calidad o optan por soluciones mas profesionales.

 

Microscopios con pantallas LCD incorporadas

Gracias al abaratamiento de los componentes hoy en día es ya es posible para un aficionado  conseguir  un microscopio electrónico  con sensor de 3.6MP    y pantalla LCD HD de 4,3 pulgadas y  aumento de 600X  por un precio  muy razonable  de unos 57€ ,  Obviamente no hablamos de una solución profesional ( no espere poder ver bacterias como anuncia )  , pero   para  su uso en electrónica  es mas que suficientes   e ideal   al integrar todos los componentes  en un único dispositivo lo cual es  una gran ventaja

En  el caso del modulo KKmon ( uno de los mas asequibles ) cuenta con  8 LED de alto brillo ajustable,, sensor  CCD de  3.6MP CCD  que le proporciona una imagen clara y le ayuda a ver objetos pequeños fácilmente con la lente microscópica profesional. Ademas gracias a la  batería de litio incorporada, puede funcionar  6 horas continuamente sin alimentación exterior.

En  este caso del modulo KKmon  la pantalla LCD es de 4.3 pulgadas, lo que le permite ver instantáneamente todas sus observaciones en detalle  con  resolución 1080P / 720P / VGA aunque muchos usuarios se les antoja algo pequeña teniendo en cuanta  las necesidades actuales

La distancia más cercana entre la lente del microscopio y el objeto es 15 mm y los tiempos de aumento serán más cortos a medida que aumenta la distancia

 

Como se ve en la imagen este tipo de microscopios “low cost” con pantalla , como “extra”  suelen llevar  un soporte  y estructura de metal para ayudar a apoyar el microscopio, lo cual lo hacen mucho mas robusto que otras soluciones mas sencillas 

Esta es  una opción  desde luego para quien disponga de presupuesto de las mejores

 

Microscopio económico con sensor de 2MP

Hay   un refinamiento  de la solución anterior , pero sin pantalla , lo cual abarata  bastante el costo del microscopio  perdiendo la funcionalidad de portátil , pero a cambio gracias a un ordenador, ofrece una ventaja adicional de  poder ampliar  la imagen a un tamaño bastante mayor que soluciones con pantallas integradas , y estos son los microscopios digitales USB

Un modulo razonable muy económico es el Microscope01  que nos ofrecen en Amazon  por  unos  22€  .  Este modulo admite resoluciones de :1600 x 1200 (2 mega píxeles), 1280 x 960 (1,3 mega píxeles), 800 x 600, 640 x 480  y en  vídeo de 1600 x 1200 (2 mega píxeles), 1280 x 960 (1,3 mega píxeles), 800 x 600, 640 x 480  siendo la velocidad de fotogramas máximo de 30 por segundo con brillo 600 Lux.

El modelo es  un  potente microscopio  con zoom digital (100X-200X, 50X-400X, 50X-500X, 50X-600X, 800X, 1000X.)  continuo de 6 niveles  mas que suficiente para nuestras necesidades en electrónica

Este microscopio digital USB 2.0  cuenta con brazo flexible ( de platico duro  ) contando con dos ajustes  en altura  y en ajuste fino (zoom) ,siendo la observación continua con el zoom  muy cómoda con una sola mano.

Como no podía ser menos lleva 8 luces LED blancas integradas , Esta iluminación es ajustable ( en el propio cable usb)  lo cual  hace que las imágenes ampliadas se vean claras y brillantes; permitiendo ver el detalle más pequeño en alta resolución directamente en su pantalla de ordenador.

Los drivers incluidos  solo se incluyen  para  Windows XP/2000/Vista/Win7/Win8 32 y 64 bits pero se incluye un potente sw llamado ampcamp para manipular tanto el vídeo como la imagen capturada . Por cierto ,se puede forzar con un botón en el propio cuerpo de Snap).

El rango de enfoque  manual  es desde  10 mm (3,94 pulgadas) hasta a 250 mm (9,84 pulgadas) lo cual no permite colocar lo que necesitemos sobre la base  y poder soldar/desoldar  sobre esta sin que el microscopio nos  interfiera

 

 

 

Por cierto   si adquiere   este económico modulo     !no olvide quitar  la tapa transparente del objetivo!( al ser transparente no se aprecia que sea un guardapolvo , pero al estar puesta esa tapa  reduce  la calidad de la imagen)

 

Soluciones casera basadas en  webcams recicladas

Una cámara web normal tiene dos partes :

  • La parte PCB con el sensor CMOS (exactamente en el PCB se ha montado un sensor CMOS en él que recibe la imagen de la lente y se proyecta una imagen muy pequeña en el CMOS . )
  • La otra parte es la lente que recibe la imagen de la parte frontal y la hace que sea muy pequeña en el otro lado de manera que se puede proyectar en el sensor CMOS .

Samaddon  observo que invirtiendo la lente del  objetivo  y  reinstalándo la  en el sensor CMOS  se consigue  un gran resultado. La recolocación se hace de forma que  la parte más pequeña de la lente reciba la forma de imagen exterior y la parte opuesta   más grande se proyecte  en el sensor  CMOS  de modo que dicha parte más pequeña de la lente amplifica  la imagen  a un gran escala

Entendido el concepto ,ahora hay  tres  factores en los que la calidad de la imagen depende  :

  • Distancia del objeto bajo observación:  desde el exterior o el lado más pequeño de la lente :este es el factor más importante , si la distancia será más la imagen se invierte y si va a ser demasiado cerca de la imagen será borrosa . Así que es importante mantener una distancia perfecta puede usted ajustar de acuerdo con usted para obtener una buena imagen.
  • Luminosidad :Debe haber una luz adecuada para ver el objeto de esto es también un factor importante cuanto menor sea la luz lo peor es la calidad de la imagen .
  • Calidad de la cámara: cuanto mejor sea la calidad del sensor c-mos de la cámara mejor sera de la imagen.

 

Solución casera  con una webcam de bajo coste

Para  conseguir este cometido partiendo de  una webcam  normal ,  se  pueden seguir los siguientes pasos:

  • Abrir la carcasa de la cámara y sacar el PCB de ella con el objetivo , ya que puede ocurrir que el objetivo y los CMOS no están unidos entre sí por medio de tornillos pueden ser unidas por la propia carcasa :con esto ya tiene la placa de circuito impreso  y la lente de la carcasa . Observe la lente cuidadosamente en busca de hilo para que se puede atornillar la lente hacia fuera de la carcasa secundaria sensor CMOS o si no hay un hilo allí, así tal vez sólo puede llevarlo a cabo desde el sensor CMOS o podría ser sostenida por tornillos. Ahora saque la lente y quite la cubierta de la lente en su caso
  • Usted verá que la parte más pequeña de la lente se enfrenta a la captura de la imagen más grande desde fuera del sensor y CMOS. Ahora tenemso que invertir la posición del objetivo para que este la  parte más grande frente al sensor CMOS y ahora fije  firmemente a la carcasa invertida o si usted no tiene ninguna carcasa interior  péguela  con pegamento caliente y pinte con negro ésta  para que la luz no se salga
  • Para contener el conjunto dado que no servirá la carcasa original ,mida todos los cuatro lados (normalmente sera  un cuadrado ) ,traze las marcas en un vaso de plástico transparente y  corte estos con un cuchillo caliente en caso de utilizar plástico transparente o con una hoja de sierra especial. Luego  tome 4 varillas cilíndricas  (pueden servir recambios usados) y corte cuatro patas para la carcasa..Ahora que ha cortado las patas  haga cuatro agujeros en las cuatro esquinas de la diapositiva transparente y ajustada al diapositivas con las patas con 4 tornillos.Entonces  si tiene agujeros en la placa de circuito impreso apriete estos también con tornillos  , o  si no tiene ningún agujero pegue la placa con pegamento caliente o algo sin hacer ningún daño a los PCB.
  • Puede conectar a su ordenador y probarlo poniéndolo cerca de cualquier objeto alguno y a  continuación, podrá ver una vista ampliada de ese objeto. 

Solución casera  con una webcam lifecam de Microsoft

La solución de usar  una web-cam  normal e invertir la lente adolece de  problemas  con la ubicación de nuestros componentes,  pero sobre todo ofrece  baja  resolución, motivo por el cual lo ideal es usar una web cam de calidad HD o mejor Full-HD como por ejemplo el modelo Lifecam de Microsoft .

Es  tan popular  este modelo , que de hecho  existe un kit   que se puede comprar para este cometido , pero la lente cuesta  $50  y cuenta con  un único  distancia focal fija asi  que una  opcion   mas económica s pasa por reciclar un viejo microscopio de juguete  y adaptar la cámara  a este , trabajo realizado por Spectrhz

Para esta tarea primero desmontaremos el microscopio y retiraremos la lente.

La lente se llevara al interior de un tubo de cobre que se montara en una base de plástico. Quitaremos el plástico base de latón y gracias a la impresión 3d   imprimiremos  una nueva base que vaya justo en el cuerpo de la lifecam con la lente original quitada.

Las  piezas necesarias se pueden descargar directamente en  thingiverse aquí

El resultado debería aparecerse al  de la siguiente imagen

 

 

La lifecam tiene una reproducción del color excelente con buen bordes definidos y una tasa de actualización rápida  así  que si cuenta con una cámara , un microscopio  y una impresora 3d  ( y por supuesto tiempo para ensamblarlos)  es una buena idea 

 

En caso contrario de no  desear reciclar viejas web cams,   el  modelos  Microscope01  que nos ofrecen en Amazon  por  unos  22€   es  una opción  mas que interesante  si se sopesa que integra  zoom digital continuo de 6 niveles admitiendo resoluciones de hasta 2 mega píxeles en  imagen o en video ( con la velocidad de fotogramas máximo de 30 por segundo )  de  modo  que   con este modelo  ya tendríamos un  potente microscopio  con resolución   mas que suficiente para nuestras necesidades en electrónica