Nueva vida para un panel LCD


Por desgracia es habitual que tanto en los ordenadores portátiles como los ordenadores del tipo de todo en uno ( he incluso otros dispositivos) , se  termine estropeando la placa madre, el  procesador   o una combinación de ambos,dejando sin uso la pantalla interna simplemente porque va integrada en dicho equipo.  Si nos centramos en los ordenadores, la placa base y el procesador son dos de los componentes de hardware más importantes dentro de un PC  (sea del  tipo ) ,dado que las diferentes partes  de hardware  que hay dentro de un  PC se comunican entre sí a través de los circuitos de la placa base. Lamentablemente ,tanto la placa base como la CPU  de ordenadores portátiles como los ordenadores del tipo de todo en uno  pueden ser muy caros de reemplazar, por lo que llegado a este punto   dado los  altos costes de reparación  que en la mayoría de los caso supera  a un ordenador nuevo , lo normal es que se termine  desechando  el equipo completo aprovechando,  en el mejor de los casos ,los módulos de memoria  o el disco y desechando desgraciadamente el resto ¿pero y si pudiésemos reutilizar mas partes?     

Averías en la placa madre

El diagnóstico de una placa base o CPU defectuosa no es una ciencia exacta, ya que ambos componentes de hardware presentan síntomas similares cuando fallan. En la actualidad es muy raro que un procesador falle, pues este componente implementa multitud de medidas de seguridad para evitar problemas, aunque no es imposible que se haya estropeado, por  lo que  lo más seguro es que el fallo se deba a la placa base, aunque no se puede dar nada por seguro sin hacer antes las correspondientes comprobaciones. La placa base incluye multitud de elementos electrónicos, muchos de ellos  extremadamente sensibles al calor o a una subida repentina de la tensión eléctrica, por lo que es uno de los componentes que se estropean más a menudo. Para diagnosticar una posible avería  de la placa base o el procesador puede seguir una serie de pasos muy sencillos:
  • En  primer lugar apagar el ordenador y desconectar el cable de alimentación.
  • Vuelva a conectar el cable de alimentación  en otra toma de ca  que sepa que hay suministro eléctrico (por ejemplo  probando el enchufe  con  una lámpara)  y luego intente encenderlo
  • Si no arranca,  intente escuchar al altavoz interno para intentar dlilucidar la secuencia de pitidos que la placa base produce cuando el sistema detecta un problema con un componente de hardware crítico.
  • Consulte en otro ordenador según el modelo de placa base   la documentación oficial  del fabricante para averiguar segun esa  secuencia qué dispositivo es responsable del código de sonido,
  • Si tiene una pulsera anti-estática colóquesela, de lo contrario toque una superficie metálica desnuda, como el chasis del ordenador para descargar cualquier posible energía estática, la cual podría dañar sus componentes.
  • En caso de que no  haya vídeo ni señal de audio  ,lo ideal seria desmontar las parte extraibles como el   disco , memorias , etc  para comprobar  si hay al menos señal de video o se producen señales de audio: si al volver a colocar el hardware en cuestión vuelve a  perderse el video  es posible que deba reemplazar ese componente.
  • Si el problema persiste desconecte el cable de alimentación y todos los componentes periféricos conectados retire todo el hardware del PC, excepto la placa base, la CPU, la fuente de alimentación y siga estos pasos:
    • En primer lugar revise el chip de video aflojando para ello y quitando los soportes que sujetan el disipador de calor y el ventilador de la GPU a la placa base.Gire el disipador de calor hacia adelante y hacia atrás para debilitar el sello que lo une a la parte superior del procesador.Extraiga el disipador de calor: si está demasiado caliente para tocar por más de un par de segundos, la GPU podría sobrecalentarse con el uso prolongado.La actualización de la pasta térmica     y la limpieza profunda del  disipador de calor mejorará la refrigeración y puede  detener los apagones repentinos del sistema.
    • Si no mejora el funcionamiento , toca probar testear la refrigeración de la  CPU. Libere la palanca que asegura la CPU a la placa base. Levante la CPU de la placa base y verifique que la superficie del componente no esté doblada o rota, lo que indicaria que se debe reemplazar.Igualmente que con la GPU , la actualización de la pasta térmica     y la limpieza profunda del  disipador de calor mejorará la refrigeración  y podría resolver el problema. Para volver a colocar el procesador en su lugar, alinee con cuidado  el triángulo situado en el borde del procesador con el triángulo en la ranura del procesador para colocarlo de nuevo. Coloque la CPU en su zócalo y luego presione hacia abajo la barra para bloquear el componente en su lugar.
  • Vuelva a conectar el cable de alimentación y presione el botón de encendido. Verifique la luz indicadora de encendido y escuche si gira el ventilador del sistema. Si la luz indicadora permanece apagada y el ventilador del sistema no se enciende, es posible que la fuente de alimentación esté defectuosa .En caso de tanto los ordenadores  portátiles  y los All In One esta fuente suele ser externa    y de una única tensión DC , por lo que revise con con polímetro  si esta  esta sacando la tensión  de trabajo que indica en la rotulación de la  misma placa ( suele rondar entre los 13 y los 25V DC). Obviamente si no hay tensión reemplace la fuente de alimentación
  • Si con todas la medidas  anteriores el ordenador se niega a encender, la placa base puede tener la culpa  por lo que debería revisar en  la placa base  verificando que no haya chips dañados, condensadores dañados, rastros quemados o grietas o fracturas).
  En el caso de ordenadores  portátiles   y ordenadores ALL in  ONE  ,si la placa base ha sufrido daños físicos, lamentablemente  debería ser reemplazada por una  exactamente del mismo modelo, lo  cual  normalmente suele suponer de un coste muy elevado,  que no suele  ser  compensar , pues ademas  muchos resellers  suelen ofrecer placas de segunda mano  que  por supuesto no ofrecen una garantía total como en el caso de una placa nueva  .  

Reusar  un panel de LCD

Si decide  no arreglar su ordenador por un coste excesivo  , ademas de aprovechar memorias, unidad dvd, discos y fuente   , hay un componente que no se suele caer  : la pantalla integrada  pues casi siempre suelen llevar  una conexión LVDS con la placa  madre , lo cual no es un conexión estardar que podemos usar para otros  fines Vamos  a ver como este tipo de pantallas integradas  en ordenadores  portátiles   y ordenadores ALL in  ONE ,las cuales por cierto suelen ser de muy buena calidad . a pesar de tener conexiones  LVDS  puede conectarse  a  otras fuentes con un adaptador  y de este modo darle una segunda vida  a la pantalla de su viejo ordenador   En primer ligar separaremos  la pantalla del resto del cuerpo del ordenador  portatil o all in one ( en el ejemplo es una panatalla de 17″ procedente de un ordenador portatil Acer).   Ahora tendremos que quitar el marco frontal qeu cubre el panel  lcd, para lo cual suelen usarse embellecedores   que ocultan los tornillos   o bien directamente van a presión . En el caso de no lleva tornillos  no olvide que  existen herramientas de plástico para no dañar las partes , aunque si no tenemos mucho interés en el marco con una navaja con cuidado puede obtener el mismo resultado Ahora toca    desmontar   las conexiones internas  como son las dos antenas de la placa wifi o las conexiones de  la web cam  . Como se ve en la imagen ,en algunos casos como el del ejemplo todos los cables va integrados en un cable especial  que tendremos que desechar porque  es cable propietario  y  NO nos servira  para conectarlo a un adaptador LVDS con salida standard Para  nuestro proyecto tampoco  nos servirá el panel de plástico posterior pues así aligeramos el tamaño del conjunto . Por ultimo , tan solo  nos  queda eliminar también el inversor  para alimentar la retro-iluminación del panel lcd  pues  es muy complejo  alimentar con CFFL el que lleva incluido `pues usa varias señales de control que no puede manejar   nuestra nueva placa de control . Observe por  cierto que entonces nos quedaría unicamente  tan solo dos cablecillos que salen del propio  panel , los cuales también tendremos que conectar al  adaptador.   Finalmente ya podemos desconectar el conector LVDS de la forma de cable que en principio vamos a  desechar   Bien ya tenemos el panel LCD  , donde como habrá apreciado   usa únicamente dos conexiones: el LVDS  y la retroiluminación,  así que tendremos que adquirir un adaptador LVDS para el panel que tengamos ( en este caso  un panel de LG del tipo  LP 171WP4 Aqui hagamos una nota importante: nos debemos asegurar que el adapartador LVDS que compremos  es  compatible con  nuestro panel  , pues  no todos los paneles  usan los mismas conexiones ni tampoco la misma alimentación para el CFFL Este modelo  es compatible  con el panel  mostrado LP171WP4:   njytouch M. NT68676.2 A HDMI DVI VGA Audio LCD Controlador Junta para LP171 W01 lp171 W01-a4 K1 lp171 W02-a4 1440 x 900   incluyendo  ademas  el inversor para el panel Este adaptador pues  pues puede convertir un simple Panel LCD en una pantalla de trabajo gracias asu conexiones  HDMI, DVI, VGA Audio  admitiendo resolución 1440 x 900,con cable de 6bit Este  controlador  es exclusivo para  estas variantes del panel :
  • lp171 W01
  • lp171 W01-a4 K1
  • lp171 W02-a4
No nos debemos olvidar por cierto de la alimentación  pues necesitaremos usar un adaptador de alimentación de 12 V 4 A para alimentar todo el conjunto   Para  usar este adaptador seguiremos los siguientes pasos :
  1. Conectamos el panel de la placa de pulsadores ( sirve para ajustes)   a la placa principal del conversor
  2. Conectar un cable desde el conversor  al inversor CFFL ( es la placa pequeña)
  3. Conectar a la salida del CFFL el cable de retro-limuminacion del panel ( usa un mini-conector de dos pines)
  4. Conectar la salida del conversor con un cable LVDS a la entrada LVDS del panel LCD ( donde iba conectada  la forma de cable(
  5. Alimentar con 12v  al menos 3Amp el conjunto
  6. Conecte a una entrada  una señal de video
  7. DISFRUTE DE SU PANEL REUSADO
   

Reconocimiento de colores con Pixy


En efecto, si no tenemos demasiado tiempo  para experimentar con algoritmos de reconocimiento de imágenes con opencv o similares ,por ejemplo para integrar  la visión artificial en un robot que siga una linea, hay un producto llamado   Pixy2    que puede hacer todo eso y mas. Además, esta segunda version,  es más rápida, más pequeña y más potente que el Pixy original, agregando algoritmos de seguimiento / seguimiento de línea, así como otras características  (de  hecho la velocidad de procesamiento  en tiempo real   se ha mejorado en 60 fotogramas por segundo)

Como  puede  suponer  Pixy2  incorpora una cámara  y  una fuente de luz , y con todo  este hw puede detectar líneas, intersecciones y pequeños códigos de barras, diseñados para robots que siguen líneas.

Precisamente  por la utilidad de integrarlo en pequeños robots ,se han agregado algoritmos de seguimiento a la detección de objetos basada en color. Ademas tampoco descuidan su conexión con otras placas pues proporcionan bibliotecas mejoradas y simplificadas para Arduino, Raspberry Pi.

Veamos a continuación   mas detalles sobre esta interesante  placa

 

Hablamos de una placa  bastante pequeña(de unos 8x7cm) ,  tanto que incluso se puede conectar varios Pixy2 a un microcontrolador pues  Pixy2 es más pequeño, más rápido y más potente que el Pixy original. 

Este sistema de visión inteligente plug-and-play para Arduino-compatibles, Raspberry Pi u otros microcontroladores / sistemas de computadora.

 Al igual que su predecesor, Pixy2 puede aprender a detectar objetos que le enseñe, simplemente presionando un botón. Además, Pixy2  implementa nuevos algoritmos que detectan y rastrean las líneas para su uso con robots de seguimiento de línea (  incluso con  los nuevos algoritmos también pueden detectar intersecciones y «señales de tráfico».)

 

Aunque la nueva cámara puede funcionar hasta 60 fps, se  ejecuta aproximadamente la mitad de esa velocidad y existen múltiples opciones para el ajuste fino del reconocimiento de objetos, todo  ello  para  mejorar la precisión   el reconocimiento de imágenes   ya que la cámara no esta diseñada para la grabación de imágenes pero si  pasará el centro X, Y, y el ancho, la altura de un objeto, y lo hace muy bien.

La nueva version  Pixy2  lleva  modo de seguimiento de línea y fuente de luz LED integrada simplificando  su programación recibiendo solo los objetos que le interesan.

Se puede utilizar el controlador que desee pues incluye bibliotecas de software para Arduino, Raspberry Pi y BeagleBone Black.

Si lo conectamos a  un pc, podemos instalar la utilidad de configuración (se ejecuta en Windows, MacOS y Linux) asi como el sw  Pixy2 CMUCam5, un sensor de imagen para su microcontrolador que puede enseñarle qué buscar.También es una gran mejora con respecto a las versiones anteriores de Pixy CMUCam, que agrega una mayor flexibilidad cuando se trata de cambios de iluminación y exposición. También puede recordar siete firmas de colores diferentes, encuentre cientos de objetos en a visión del robot es fácil: presione el botón para enseñarle a Pixy2 un objeto

Por ello el   Pixy2   es un sensor de imagen con un potente procesador que puede programar para enviar solo la información que está buscando para que su microcontrolador no se vea abrumado por los datos  ya que Pixy2 exporta su información en una variedad de formas útiles (UART serie, SPI, I2C, salida digital o salida analógica) para que su microcontrolador o microcomputadora pueda comunicarse fácilmente mientras realiza otras tareas.

Las coordenadas  enviadas  desde   Pixy2  pueden decirle a su robot qué hacer, como girar a la izquierda, girar a la derecha, disminuir la velocidad, etc. Y Pixy2 hace todo esto a 60 cuadros por segundo, para que su robot también pueda ser rápido. Pixy2 utiliza el tono y la saturación como su principal medio de detección de imágenes, en lugar del RGB normal. Esto significa que la iluminación o la exposición no afectarán la detección de Pixy2 de un elemento, lo cual es un problema frustrante con muchos sensores de imagen. .

 

 

Vamos  a ver un ejemplo publicado en instructables.com  de un interesante  robot seguidor que implementa  esta tecnologia  creado  por chaabani houssem 

Necesitaremos  al menos los  siguientes componentes:

  • 1 Arduino mega (o en su defecto un Arduno uno o Arduino nano … )
  • Pixy2  
  • 2 motores  paso  a paso
  • 2 ruedas y sus engranajes 
  • Un l293d
  • Una batería de  9v  (o   cualquiera que pueda reciclar 

 

Podemos  enseñar cualquier objeto a pixy a través de este enlace:

http: //cmucam.org/projects/cmucam5/wiki/Teach_Pixy …

Para controlar  los dos motores usaremos un famoso controlador , el CI   l293d

Este circuito integrado     de 16 pines ofrece los siguintes carasterciticas: 

  • Capacidad del canal: 600 mA de corriente de salida / canal.
  • Sistema de activación.
  • Pico de salida de corriente: 1,2 A / canal (no repetitivo).
  • Protección contra sobretemperatura.
  • Entrada lógica «0» a 1,5 V (alta inmunidad al ruido).

Conectemos  los pines del L293D   a un  Arduino   de la siguiente manera :

  • Pin  1 al pin Arduino 2.
  • Pin 2 al pin 3 de Arduino.
  • Entrada 3 al pin 4 de Arduino.
  • Entrada 4 al pin Aduino 5.

Con estas conexiones ya  se puede probar el robot como verificar el avance, probar el giro a la izquierda o  el giro a la derecha y la parada.

Si todo va  bien ahora ya puede agregar pixy, pero para que  funcione el robot  antes tendrá que  programar Arduino  para  que  en función de la  salida de  Pixy2   de las  ordenes oportunas a los motores

Como  ejemplo de código  vamos a ver  una demostracion de como podemos  controlar lso dos motores usando  unicamente la informacion apoportada por Pixy2  

 

//definición de  puertos  que se usaran

int mg2 = 4;

int mg1 = 5;

int md1 = 3;

int md2 = 2;

int enag= 6;

//librerias  externas

#include <Wire.h>

#include <Pixy.h>

//llamada a las primitivas de Pixy

Pixy pixy;




//definición de puertos 

void setup()
{
pinMode(enag, OUTPUT);

pinMode(md1, OUTPUT);

pinMode(md2, OUTPUT);

pinMode(mg1, OUTPUT);

pinMode(mg2, OUTPUT);

//sacamos  por consola de Arduino mensajes de depuración

Serial.begin(9600);

Serial.print("Arrancando...\n");

pixy.init();

}







//comienzo del programa  principal

void loop()
{

static int i = 0;

int j;

uint16_t blocks;

char buf[32];


blocks = pixy.getBlocks();

if (blocks)

{
i++;

// Hacer esto cada 50 cuadros porque si se  supero colapsaria Arduino


if (i%50==0)

{
sprintf(buf, "Detected %d:\n", blocks);
Serial.print(buf);


//bucle for que recorre todos lox bloques enviados por Pixy
for (j=0;  j<blocks;    j++) 

{

sprintf(buf, " block %d: ", j);

Serial.print(buf);  //sacamos las salida por consola

pixy.blocks[j].print();

}


}

if((pixy.blocks[0].x>120)&&(pixy.blocks[0].x<190))
{
go();  //avanzar
}

if((pixy.blocks[0].x<120) && (pixy.blocks[0].x>10))
{

gauche();//girar a derecha

}

if(pixy.blocks[0].x>190)
{

droite();} //girar  a izda
}

else
{

o9if();//hacia atras

}
}






//giro a la derecha
void droite()
{
analogWrite(enag,210);
analogWrite(mg1,0);
analogWrite(mg2,0);
analogWrite(md1,255);
analogWrite(md2,0);
delay(30);
}




//giro a al izda

void gauche()
{
analogWrite(enag,210);
analogWrite(mg1,255);
analogWrite(mg2,0);
analogWrite(md1,0);
analogWrite(md2,0);
delay(30);
}




//hacia atras
void o9if()

{
analogWrite(mg1,0);
analogWrite(mg2,0);
analogWrite(md2,0);
analogWrite(md1,0);
delay(30);
}

//avanzar

void go ()
{
analogWrite(enag,210);
analogWrite(mg1,255);
analogWrite(mg2,0);

analogWrite(md1,255);
analogWrite(md2,0);
delay(30);
}

 

Y   ahora en un vídeo podemos ver el robot   funcionando:

 

En general,   Pixy2   es un excelente sistemas de visión inteligente introductorio  pues  podemos dar seguimiento de objetos a un  robot de manera mucho más fácil que usar un pc de una sola placa con OpenCV (más requisitos de menor potencia) pues se conecta fácilmente a un Arduino Nano o Uno (entre otros sistemas)  gracias  a los ejemplos de código que proporcionan que  ayudan a ponerlo en marcha rápidamente .Ademas es  muy fácil configurarlo utilizando las instrucciones en su sitio web pues hay ejemplos integrados en su software.