Una nueva de crear placas de circuito impreso


Un circuito impreso no es mas que una placa aislante sobre la cual se dibujan «pistas» e «islas» de cobre las cuales formaran el trazado de dicho circuito, partiendo de un plano  creado normalmente desde un esquema eléctrico que se pasa a pcb con un programa de enrutamiento ,aunque obviamente ese se puede hacer de forma manual.

Para empezar tenemos que decidir que material vamos a precisar  pues si se trata de un circuito donde vayan  a estar señales de radio o de muy alta frecuencia tendremos que usar  placas de  fibra de  vidrio o de pertinax, que es un material poco alterable por la humedad o de lo contrario, para la mayoría de las aplicaciones, con placa de fenólico , baquelita , etc pueden  ser  mas que suficiente.

pcb2.PNG

Tradicionalmente los PCB  se realizaban a partir de un método foto-químico : se exponía con luz una placa de cobre cubierta de emulsión fotosensible  con un acetato  transparente que contenida el diseño de las pistas   , luego se revelaba y finalmente se atacaba con  un ácido , el cual  normalmente era cloruro ferrico(FeCI3)   o una disolución de agua oxigenada de 100 volúmenes y   agua fuerte(H2SO4)

Mas modernamente   con las fotocopiadoras o las impresoras láser  , se ha sustituido la placa fotosensible por simplemente una  fotocopia con el diseño del pcb  que se pone cara abajo con la placa virgen y  se plancha el conjunto

plancha.PNG

Después del planchado  se humedece en agua caliente , se retira el papel (con cuidado  de romper la tiras de tinta ) y luego se ataca  finalmente con  un ácido  que también puede ser una disolución de agua oxigenada de 100 volúmenes y   agua fuerte(H2SO4) o  cloruro ferrico(FeCI3).

Este proceso ultimo por cierto requiere que  pulamos con lana de acero o el estropajo de aluminio hasta que quede brillante pues dependiendo de como quede de limpia se pegará mas o menos el toner (de nuestra fotocopia)  en la placa.

pcb1

Hasta ahora hemos descrito como se hacían ( y/o  se siguen haciendo) muchas placas de circuito impreso para uso personal pero ¿y si existiera algún otro método menos engorroso,limpio, eficiente,profesional   y menos peligroso para hacer una placa de circuito impreso?

Pues en efecto se puede hacer   y gracias a una máquina CNC, que no solo  sirve para  crear piezas de todo tipo, sino que también puede servir para hacer placas PCB caseras en muy poco tiempo (por ejemplo diseñadas com EAGLE y  PCB-gcode)

Un programa  muy famoso es bCNC que nos permite controlar un  CNC que funcione a través de arduino y que usen el firmware grbl.  Este programa es el mas completo en cuanto a funciones,  pero quizás  tenga demasiadas opciones que dificultan  que nos centremos en el proceso que vamos buscando , que es el de creación de pcb mediante el pulido de las zonas que no deben conducir con una herramienta  controlada por control numérico

Precisamente  para superar las dificultades  de  bcnc  surge OpenCNCPilot , que es un sencillo programa creado específicamente para crear placas PCB con una maquina  CNC  .

Este programa es gratuito y esta disponible únicamente para windows desde la pagina de github en https://github.com/martin2250/OpenCNCPilot

Podemos ver una descripción general rápida en YouTube:

 

OpenCNCPilot es un emisor de código G compatible con GRBL.

Su característica principal es su capacidad de explorar áreas definidas por el usuario para alabeo y envolver la trayectoria alrededor de la superficie curva . Esto es especialmente útil para grabar superficies metálicas con cortadores en forma de V donde cualquier desviación en la dirección Z resultará en trazas más anchas o más angostas, por ejemplo, para el aislamiento de PCBs donde el alabeo daría lugar a rastros rotos o en corto.

Está escrito en C # y usa WPF para su interfaz de usuario. Lamentablemente, esto significa que no se ejecutará en Linux, ya que Mono no es compatible con WPF. La ventana gráfica 3D se gestiona con HelixToolkit.

 

Instalación y primeros pasos

Para instalar este programa se requiere   .NET 4.6 ,Vaya a la sección de Versiones y descargue los últimos binarios (o compílelo desde la fuente). Descomprima todos los archivos en su disco duro y ejecute «OpenCNCPilot.exe«

Asegúrese de utilizar la versión 1.1f de GRBL (las versiones posteriores pueden funcionar pero aún no han sido probadas)

Antes de la primera ejecución, debe seleccionar un puerto serie, el selector está oculto en el menú de configuración al que puede acceder en la pestaña «Máquina». Aparte de eso, no es necesario modificar ninguna configuración de modo que seleccionado  podra  conectarte a su máquina.

Abra archivos gcode o height map arrastrándolos a la ventana, o usando los botones correspondientes.

Para crear un nuevo mapa de altura, abra la pestaña «Sonda» y haga clic en «Crear nuevo». Se le pedirá que ingrese las dimensiones.
Asegúrese de ingresar las coordenadas reales, por ejemplo, cuando su trayectoria esté en la dirección X negativa, ingrese «-50» a «0» en lugar de «0» a «50». Verá una vista previa del área y los puntos individuales en la ventana principal

Para explorar el área, configure su sistema de coordenadas de trabajo ingresando «G92 X0 Y0 Z0» en su origen seleccionado, asegúrese de conectar el A5 de su Arduino a la herramienta y GND a su superficie , y presione «Ejecutar».

Una vez que haya terminado de explorar la superficie, cargue el archivo gcode que desea ejecutar y presione el botón «Aplicar mapa de altura» en la pestaña «Editar». Ahora puede ejecutar el código con el botón «Inicio» en la pestaña «Archivo».

En la ultima version   hay  una opción muy interesante, casi diría que imprescindible, como el autonivelado por malla. Eso permite que la profundidad de corte siempre sea la misma y el resultado quede perfecto.

 

 

 

 

 

 

 

Tres servicios gratuitos de transcripción de voz a texto


Puede parecer algo futurista, pero lo cierto es que probablemente el teclado y ratón tal como los conocemos hoy en día tenga sus días contados gracias al espectacular avance sufrido estos años en el apartado de reconocimiento de voz usando redes neuronales  y las técnicas de aprendizaje automático

En efecto ,gracias a  la tecnología del aprendizaje automático ,se aplican los algoritmos más avanzados de redes neuronales del aprendizaje profundo al audio de sus ficheros o del procedente de un micrófono  para conseguir un reconocimiento de voz de máxima precisión.

Mencionar que en todos los  sistemas de aprendizaje con redes neuronales la precisión de la API Speech mejora con el tiempo, es decir conforme perfeccionan la tecnología interna de reconocimiento de voz que usa los diferentes productos que vamos   a ver , lo cual significa que en realidad usando estos servicios estamos «entrenado»a estos sistemas para que su porcentaje  de aciertos sea cada vez mayor

Veamos algunas soluciones de reconocimiento de voz liderados por grandes proveedores como pueden ser Google ,Microsoft o IBM.

Reconocimiento de voz de bing

En efecto,   mediante la  nube  de Microsoft ( Azure)   y el servicio Bing Search  se puede convertir audio con voz en texto mediante streaming en tiempo real mediante la cual, al mismo tiempo que se envía el audio al servidor, se devuelven resultados parciales de reconocimiento.

De igual modo podría reconocer el texto a partir del audio almacenado en un archivo pero desde la pagina de demostración no es posible,pero como  “truco” casero para  probar   la funcionalidad  se  puede inyectar  el audio  ya grabado desde un dispositivo externo  por  medio de un cable de audio que lo  introduciría en el pc  pero no olvide seleccionar como dispositivo grabador la entrada de audio donde conecte la señal de audo externa .De este modo regulando adecuadamente el nivel de esta señal  debería funcionar exactamente igual que si habláramos por un micrófono

Para probar el servicio vaya a la url   https://azure.microsoft.com/es-es/services/cognitive-services/speech/

No olvide  seleccionar el idioma de destino en Language, haga clic en el micrófono en Iniciar grabación y empiece a hablar.

bibg

También tiene la opción de hacer clic en las dos frases de voz de ejemplo para ver cómo funciona el reconocimiento de voz.

Como en todos estos tipos de servicios ,si usa esta demostración, significa que consiente ofrecer datos de entrada de voz a Microsoft para fines de mejora del servicio.De  hecho al cargar datos para esta demostración, acepta que Microsoft puede guardarlos y usarlos para mejorar los servicios Microsoft, entre los que se encuentra el  API. A fin de facilitar la protección de la privacidad, se adoptan medidas para desperzonalizar los datos y protegerlos. Los datos no se publicarán ni se permitirá que terceros los usen.

IBM

También esta disponible para efectos de pruebas  la version de IBM por Watson  que permite  igualmente el dictado de voz a texto

El servicio IBM Watson Speech to Text utiliza capacidades de reconocimiento de voz para convertir el árabe, el inglés, el español, el francés, el portugués de Brasil, el japonés y el mandarín en texto.

Lo mas destacable de  Watson es asimismo la capacidad de transcribir audio done se puede usa su micrófono para grabar audio o cargar audio pregrabado (.mp3, .mpeg, .wav, .flac o .opus solamente).

Incluso puede subir  archivos de audio o probar ficheros de muestra para probar el servicio , ( los archivos de audio de muestra  son en inglés de EE. UU y están cubiertos por la licencia de Creative Commons.)

El resultado devuelto incluye el texto reconocido, las alternativas de palabras y las palabras clave moteadas. Algunos modelos pueden detectar múltiples altavoces; lo cual  puede ralentizar el rendimiento.

A continuación esta es la url para probar el servicio en modo  demo: https://speech-to-text-demo.ng.bluemix.net/

No olvide  seleccionar el idioma de destino(Voice Model ) , haga clic en el micrófono(record Audio)   y empiece a hablar.

En unos instantes en tiempo real debería ir viendo las transcripciones  directamente desde esta pagina

Este sistema por el momento se usa  para fines de demostración y no está destinado a procesar datos personales ,así  que no se deben ingresar datos personales en este sistema, ya que puede no tener los controles necesarios para cumplir con los requisitos del Reglamento general de protección de datos (UE) 2016/679.

En teoría los primeros 1000 minutos al mes son gratis en el servicio estándar,   así que el limite es muy superior de uso gratuito al de Google o al  de Microsft .

Reconocimiento  de voz de Google

También  Google dispone de su propio servicio de reconocimiento de voz  , el cual por cierto es el usado por  ejemplo desde los terminales Android.

En el caso de que este validado contra Google  y  tenga cuenta en Google Cloud , incluso se pueden subir directamente los ficheros que deseamos transcribir mediante la opción File Upload  teniendo en cuenta la limitación de 60 minutos en caso de no querer pasar por caja.

Si quiere probar esta funcionalidad esta es la url : https://cloud.google.com/speech-to-text/

No olvide  seleccionar el idioma de destino(Languaje ) ,seleccione el micrófono(Microphone)    y empiece a hablar.

En unos instantes ,en tiempo real debería ir viendo las transcripciones  directamente desde esta pagina:

Como no podía ser de otra manera, también  es posible reconocer el audio subido en la solicitud e integrarlo en su almacenamiento de audio de Google Cloud Storage

¿Pero cual elegimos?

Como hemos podido  ver todos estos servicios de reconocimiento de voz  están en fase de pruebas para demostrar por  ahora incluso en el estado inicial  lo que pueden llegar  a poder hacer.

De todas las opciones ,en caso de tener necesidad de usarlo por mucho tiempo,  el servicio de IBM tiene una oferta mas que generosa de 1000 minutos frente a los 100 de Google  , pero no olvidemos que si queremos integrar este servicio con una aplicación albergada en Azure o en la infraestructura de Google  entonces necesitaremos usar sus propios servicios  .