Autor Tema: Hablemos del Ruido  (Leído 99912 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Leon Pic

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3610
    • Impresiones en 3D
Re: Hablemos del Ruuuido
« Respuesta #30 en: 10 de Septiembre de 2007, 18:54:49 »
No te olvides de poner algo superimportante: filtros pasa bajos en todas las entradas del pic que utilices y estén conectadas a cables.

Un saludo

Hola. ¿Qué frecuencia tiene que ser el filtro  pasa bajos?
Porque estoy por hacer una conección con un pic que viene las ordenes desde un mando con cables a unos 3 metros de cable.
Saludos.  :-/ :-/
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega al PADRE si no es por mi.

Desconectado jfh900

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3595
Re: Hablemos del Ruuuido
« Respuesta #31 en: 11 de Septiembre de 2007, 21:31:23 »
Bueno, en este mismo foro se trata el tema del ruido desde el punto de vista de la eliminación por software. Pero debemos de intentar eliminar el problema de entrada, osea en el hardware y despues de intentar eliminarlo lo más posble, el resto y la tranquilidad la obtenemos por el software. Dentro del hardware, aquí pongo un esquema de una conocida máquina (no voy a decir el nombre) que ha funcionado durante muchos años en todo tipo de ambientes. Mirar los filtros pasabajos que hay en las entradas de señal y los filtros de desacoplo tanto de la alimentación como de los integrados. Por cierto estas máquinas llevaban implementado el wathdog mediante integrados de forma externa.



Un saludo.
* Cuando hables, procura que tus palabras sean mejores que el silencio.
* 'Todos somos ignorantes, lo que ocurre es que no todos ignoramos las mismas cosas.' Albert Einstein.
* No hay nada peor que un experto para evitar el progreso en un campo
* "La vida es como una novela. No importa que sea larga, sino que esté bien narrada" Seneca
* La vida no se vive por las veces que respiras, sino por los momentos que dejan sin aliento.
* Dios dijo: ∇·E=ρ/ε0 ; ∇·B=0 ; ∇xE=-dB/dt ; ∇xB= μ0ε0dE/dt..y la luz se hizo..!!..

Desde España Jesús

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Hablemos del Ruuuido
« Respuesta #32 en: 19 de Septiembre de 2007, 15:16:37 »
en este link se consigue mucha información relacionado al tema.
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: Hablemos del Ruuuido
« Respuesta #33 en: 19 de Septiembre de 2007, 15:48:30 »
Pedro, apenas veo tu Hilo y es precioso este trabajo. Es una Perla y Diamante.. GRACIAS por esta trabajo!!

Desconectado Azicuetano

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1020
    • Aplicaciones Electrónicas en Alicante.
Re: Hablemos del Ruuuido
« Respuesta #34 en: 30 de Septiembre de 2007, 20:00:36 »
Hola colegas!

if( no os apetece leer el rollazo )
{
    GOTO -RESUMEN-                       // (que está al final)
}
else
{

Os voy a comentar una cosa que muchos de vosotros ya sabreis, pero, con esta experiencia queda comprobada 100% la importancia de mimar al máximo una determinada patilla del PIC. Cual es?? Jejeje.... vamos por partes.

Explico un poco por encima en que consiste el proyecto.

Varios módulos se comunicarán entre si via RS485 (visualizadora, sistema de potencia,  etc. etc.). Uno de un módulo se encargará de crujir unos cuantos relés (con el ULN2803, puesto que, me hacía ilusión meterlo en algún diseño para ver que tal funcionaba) y se comunicará por RS485 con una placa central.

Cumpliendo todas las premisas necesarias para no volver loco al PIC cuando los relés crujieran rutee la placa con todos los truquillos que he ido aprendiendo con el tiempo (y gracias a vosotros, claro). Me dió por fastidiar un poco al sistema y le hice la siguiente prueba:

Conecte a cada uno de los 8 relés de la placa una carga inductiva. La prueba de fuego? Crujir todos los relés de forma simultanea. Resultado? Cuelgues, cuelgues y más cuelgues.

Por que? Lo hago todo como lo tengo que hacer!! No entiendo nada!!  :( :(

Bueno, tras unos minutos de meditación y frustración extrema me pongo manos a la obra y... quito todos los cables, cojo la placa y la amenazo diciendole que como no funcione la voy a tirar por la ventana del laboratorio. Tras una inspección visual y un intercambio de palabras con ella la vuelvo a conectar.

El resultado fué, cuanto menos, sorprendente. Funcionaba!! Pero... Por que?? No estoy tan loco (aún) como para imaginarme que mis amenazas habían surtido efecto.

Con la mosca detras de la oreja decido cambiar el programa y hacer que los relés crujan de manera distinta. Le engancho mi querido programador y mi amiga circuital se vuelve a quedar completamente K.O.

Siguiente prueba? Quitar el programador. Resultado? Funcionamiento perfecto. Pongo el programador, funciona mal. Lo quito, funciona bien. Esto lo repetí como unas 10 veces más o menos. Mi frustración se redujo un poco (sin el programador enganchado funcionaba de maravilla) pero, pasaba algo que no entendía y eso me mosqueaba.

Me dió por pensar que como el programador lo tenía encima de los cables de alimentación de la bombas peristálticas... que podía ser posible que el ruido de los encendidos se metiera en mi placa a traves del programador. Cambié la posición del programador y la cosa seguía igual, pero, me dió pié a pensar que el ruido se metía en mi placa por los pines de la programación ICSP.

Entonces me acordé de una cosa que me dijeron una vez en una charla (de Acal Iberia). Todos los pines del pic tienen diodos internos para protegerlos de subidas de tensión excepto el MCLR (por su carácterística de aguantar el voltage de programación). Esto hace de esta patilla que se trague todo el ruido habido y por haber.

Siguente prueba? Soldé un cable de unos 20cm. a modo de antena y lo soldé al MCLR.

Encendí mi sistema con el cable soldado al MCLR y el PIC se quedaba K.O. cuando crujian los relés. Si quitaba el cable todo iba bien.

 :mrgreen: :mrgreen: :mrgreen:

Ya sabía el problema, ahora sólo tenía que solucionarlo. Puesto que tenía dehabilitado el MCLR y por recomendación de los señores de Acal Iberia, resistencia a tierra de 1K y un condensador de 150 pF en paralelo con la resistencia.  :-)

He de decir que, aunque no pusiera la resistencia a tierra (si no había ningún cable en el MCLR) no se colgaba, pero, en la comunicación obtenía un ruido tremendo cada vez que crujían los relés. Con la resistencia la comunicación es limpia e inmaculada. Si el PIC pilla ruido por esta patilla incluso te varía los datos que saca por su UART (aunque a simple vista parece que no haya relación).

-RESUMEN-

Si desactivamos el MCLR tenemos que poner una resistencia de 1K a tierra y un condensador en paralelo a la resistencia de 150pF todo lo pegados a la patilla que podamos.  :mrgreen:


Un saludo desde Alicante.
« Última modificación: 04 de Enero de 2009, 14:53:20 por Azicuetano »

Desconectado PICpegaso

  • PIC16
  • ***
  • Mensajes: 124
Re: Hablemos del Ruuuido
« Respuesta #35 en: 30 de Septiembre de 2007, 23:21:43 »
No es por nada pero este tema debería ser uno de los mas importantes del foro, el ruido cual sea su fuente es un problema de ingeniería muy pero muy importante y bastante complejo de resolver con innumerables implicaciones en cualquier tipo de sistema electrónico. Debo decir que el trabajo del compatriota palitroque es bastabte relevante una ves se requiera de una aplicación al mundo real que debe pasar por pruebas de robustez del tipo hechas por Redpic o incluso mucho mas rigurozas segun el caso.

Por mi parte debo tener en cuenta la consulta para realizar el diseño de una placa de adquisición de señales EMG (electromiográficas) requerida en la tesis de mi trabajo de grado, y es que en aplicaciones médicas las pruebas de robustez ante el ruido son bastante exigentes. Un saludo y seguro que estaré leyendo este link constantemente  :P
Fabiancho

Cuando se tiene un buen POR QUÉ, siempre se encuentra el CÓMO

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18269
    • MicroPIC
Re: Hablemos del Ruuuido
« Respuesta #36 en: 01 de Octubre de 2007, 02:08:15 »
Magnífica conclusión, Iván.
Yo suelo tirar del fuse NOMCLR así que me lo apunto. Supongo que si activamos MCLR con su correspondiente Pullup no es necesario, ¿verdad?

Desconectado Azicuetano

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1020
    • Aplicaciones Electrónicas en Alicante.
Re: Hablemos del Ruuuido
« Respuesta #37 en: 01 de Octubre de 2007, 03:16:51 »
Poniendo el pullup a 5V núnca he detectado el problema. Lo que si que he leido muchas veces es que hay que poner la resistencia lo más cerca posible del pin.


Un saludo desde Alicante.

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5538
    • Picmania by Redraven
Re: Hablemos del Ruuuido
« Respuesta #38 en: 01 de Octubre de 2007, 03:30:25 »
Muy, muy, muy interesante tu aporte, Iván. Parece que poco a poco y con experimentos de este tipo vamos conociendo en profundidad no sólo como funcionan los PIC sino qué tenemos que hacer para que funcionen bien. Muchas gracias.  :mrgreen:
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Hablemos del Ruuuido
« Respuesta #39 en: 01 de Octubre de 2007, 14:52:16 »
...
Olvidé decir que una gran fuente de ruido son los 230V de la alimentacion de los relés. Es decir, pistas por las que pasen 230V marginarla, Je, je. Lejos de planos de masa y de pistas de control. Todo lo alejada que el circuito impreso os permita. Suerte con el proyecto y ... Si Manolo se altera ya sabes ... Dale RON!! Je, je.

...

parece ser que los problemas de ruido ocurren a menudo usando alimentación bifásica ¿cierto?

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
Re: Hablemos del Ruuuido
« Respuesta #40 en: 07 de Abril de 2008, 22:54:59 »
palitroque pusistes q es valido llenar la memoria de programa no usado gon declaraciones del tipo goto $ , eso es en el caso de que se trabaje en asembler pero hice lo siguiente , tengo un programita en basic q produce una frecuencia menor a 200 hz , pero al activar un contactor , se loqueaba y me mandaba alta frecuencia no se cuanto pero era bien alta , hice esto :
como no puedo usar el watch dog por estar en uso el timer0 rellene lo q me sobraba de memoria con goto inicio , pues trabajo en basic y parece q se soluciono , por lo menos el programa regresaba a su normalidad , no se que tan bueno sea esto de  llenar la memoria de esta forma y si es diferente en asembler o en c o en basic derepente fue una suerte q me funcionara bueno queria comentar esto ya q el tema esta interessante :-/

Desconectado flacoclau

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1692
    • El Micro Reactor
Re: Hablemos del Ruuuido
« Respuesta #41 en: 08 de Abril de 2008, 12:33:23 »
Buen aporte, en caso de que algún ruido afecte el contador del micro este siempre retorna al inicio, es así?
Las personas con buena ortografía me atraen textualmente.

El Micro Reactor

Córdoba capital - Argentina.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Hablemos del Ruuuido
« Respuesta #42 en: 08 de Abril de 2008, 13:07:24 »
sería cuestión de revisar la documentació del basic, debe existir un comando que permita acceder a la rom-flash, es igual como cuando creas una constante.

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
Re: Hablemos del Ruuuido
« Respuesta #43 en: 08 de Abril de 2008, 23:53:22 »
Mi hipotesis era esta en basic goto inicio(es casi lo mismo que goto $ con unas dos sentencias mas o por alli) y tengo un programa q se activa al presionar un pulsador , sucede q al activar el contactor hacia como si el pulsador se hubiera presionado y me mandaba el mensaje de activado esatndo el pulsador intacto , se me vino la idea q la rutina de activacion esta alguito mas adelante osea habria que el contador de programa saltar unas direcciones par llegar alli , eso no era el problema tan fatal la cosa era q tb genero una frecuencia de 200hz pero en una de esas se loqueaba y me daba algo de 1000hz y se quedaba asi hasta q apagaba el micro y reiniciaba , entonces supuse q el ruido acelero al cristal y este se descontrolo y avanzo a direcciones del contador de programa que superaron el (end) del cual ya no pudo regresar amenos q tubiera un perro guardian el cual no podia usar como ya comente , entonces supuse el problema era q caiga en un lugar en donde no pueda regresar y creo haberlo slucionado llenando la flash restante asi:
goto inicio
goto inicio
goto inicio...
y voala hasta ahora no detecto ningun problema vere si encuentro uno y lo comento  :mrgreen:

Desconectado Leon Pic

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3610
    • Impresiones en 3D
Re: Hablemos del Ruuuido
« Respuesta #44 en: 09 de Abril de 2008, 09:44:43 »
Microchips recomienda llenar toda la memoria de programa restante con goto $ cuando se trabaja con el Perro Guardian. Para los que trabajan con el C, el goto $ es que el CP quede en esa línea. Doy un ejemplo:

          goto         $

Es lo mismo que:

loop    goto         loop

El CP quedará en esa línea hasta que el WDT haga un reset.

Es una muy buena idea la que acabas de comentar electronando, para cuando no se trabaja con el mismo.
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega al PADRE si no es por mi.


 

anything