Autor Tema: duda con leds a 12 volts  (Leído 13313 veces)

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

Desconectado luchoc

  • PIC10
  • *
  • Mensajes: 47
Re:duda con leds a 12 volts
« Respuesta #15 en: 27 de Enero de 2016, 04:40:33 »
Quiero agradecer a todos por la gran ayuda q me estan dando, les juro que soy una esponja y absorbo todo lo que me dicen e incluso anoto todo en mi cuaderno como corresponde!

Carlos me saco el sombrero! son pocas las personas que ayudan a los que estamos arrancando como lo haces vos, porque no tenias porque hacerlo y te salio de la nada toda esta gran explicación. 1000 Gracias. Te respondo entre lineas.

* Supongamos que ese transformador que tienes hubiera entregado los 12V que prometía, entonces y sabiendo que los led que usarás son de 2V cada uno, 12V / 2V nos da que puedes alimentar 6 led en serie tal como tenías entendido, hasta acá todo lindo, pero...
La tensión de la salida de un transformador común es muy inestable porque depende directamente de la tensión de la red eléctrica y de otros factores, por lo tanto nunca debes de usar con un transformador la cantidad justa de leds y si ese trafo entregara los 12V prometidos yo no te recomendaría que usases 4 en serie, para crear una caída de tensión de 8V y que los 4V restantes los consuma la resistencia
Si usaras una fuente conmutada o switching como son de tensiones mucho más estables, podrías llegar a conectar 5 led en serie, pero nunca debes de tener tantos led en serie como tensión entregue la fuente a usar.

Entendido a la perfección, entonces voy a comprar un trafo de los reales, ya sabia q era malo pero me venia bien para arrancar ya que solo alimentaba un par de leds a un pic16f877a para probar las primeras programaciones, ya para algo tan grande quedo chico.
Tengo una fuente muy buena switching de 18 a 32 volts de 8 amperes de las metálicas, esa la voy a usar de laboratorio, pero tengo que hacerle un regulador variable, ya tengo todo solo me falta el tiempo para armar el circuito.

* Por lo que veo no usarás un método de multiplexado para controlar los display, por lo tanto los led estarán (mientras deban) siempre encendidos, esto significa que puedes reducirle la intensidad de los led y no notarías un gran cambio, por ejemplo ahora estás usando una resistencia de 330 ohms que significan unos 18 mA, si usaras una de 390 (15 mA) o incluso una de 470 (13 mA) verás que no tendrás mucho cambio de luminosidad, pero si un gran cambio de consumo, de calentamiento y de mayor vida útil de los led's

Mira acá te dejo una foto donde uso dos CD4015 para la multiplexion pero nose si lo estoy usando bien.

* proto2.jpg
(103.99 kB, 800x531 - visto 1482 veces)


Usando un ejemplo que encontré en alguna pagina que ahora no recuerdo y modificando bastante el código lo que hice fue usar el pin LE/STB para intercalar entre un 7 segmentos y otro cada x tiempo. Dejo el código para q lo vean si esta bien. El problema que tengo que no alcanzo a comprender porque cuando resto y llega a 0 pasa a 34 y despues a 54 y hace cosas raras en vez de ir 0 a 99.

Código: [Seleccionar]
DEFINE osc 4 'Definimos la frecuencia
allDigital

TRISA.0 = 1
TRISA.1 = 1
TRISA.2 = 1
TRISB = 0
               
w1 VAR  WORD   
w2 VAR  WORD         
w3 VAR  WORD
                 
ESTADO VAR BYTE : ESTADO = 0
;Levanto datos de la eeprom
Read $00, w1
Read $01, w2
Read $02, w3

INICIO:
if PORTA.3 = 0 THEN ;SUMA
    PAUSE 200
    w1=w1+1
    ESTADO = 3
    call WRITE_VARS
    goto mostrar   
endif
if PORTA.2 = 0 THEN ;RESTA
    PAUSE 200
    IF w1>000 THEN
        w1=w1-1
        ESTADO = 1
        call WRITE_VARS
        goto mostrar   
    ENDIF
endif
if PORTA.4 = 0 THEN ;RESET
    w1 = 0
    w2 = 0
    w3 = 0
    call WRITE_VARS
    goto mostrar   
endif

MOSTRAR:
    IF w1=100 THEN w1=0
   
    w2=w1     DIG 0
    w3=w1     DIG 1
    PORTB=240 | w2           
    LOW PORTB.5                 
    PAUSE 1
    HIGH PORTB.5
    PAUSE 1
   
    PORTB=240 | w3
    LOW PORTB.4
    PAUSE 1
    HIGH PORTB.4
    PAUSE 2
    If (PORTA.2 = 1) AND (ESTADO = 1) THEN CALL beep ;Si despues de soltar el boton el estado es 1 hago parpadear el display+
    If (PORTA.3 = 1) AND (ESTADO = 3) THEN CALL beep ;Lo mismo pero en el estado de resta
    GOTO INICIO
   
WRITE_VARS:
    Write $00,w1  ;Escribo en la eeprom el valor de la variable w1
    pause 1
    Write $01,w2  ;Escribo en la eeprom el valor de la variable w2
    pause 1
    Write $02,w3  ;Escribo en la eeprom el valor de la variable w3
    return
BEEP:
    ESTADO = 0
    High PORTA.1
    Pause 200
    Low PORTA.1
    Pause 100
    High PORTA.1
    Pause 100
    Low PORTA.1 
    Return ' Retorna una línea después del llamado "Call"   
END

Captura del diseño en ISIS:

* isis.jpg
(73.19 kB, 753x342 - visto 1635 veces)



* El trafo que utilizas no es un transformador de tenerle mucha confianza (por experiencia) cuando lo exijas cerca de su potencia máxima, la tensión del mismo caerá muy significativamente, aparte calentará de manera importante.
Más allá de eso, es posible con este trafo un error de conexión inversa.
Recomendación: construye una fuente adecuada para tu proyecto, usa un trafo de los comprados en la tienda de electrónica (los que vienen simples, sin armar), ponle un puente diodo y unos condensadores, y todo dentro de su propio gabinete. Obtendrás algo de mucha mejor calidad y mas fiabilidad.
Aparte podrás hacerlo un poco más sobrado de intensidad así no anda tan ajustado como estará ese

Si, mira pensaba comprar unos que son conmutados que opinas, cual seria mejor y mas economico? La idea es en algun momento comercializar esto!
Opcion 1:
http://articulo.mercadolibre.com.ar/MLA-601855574-fuente-switching-12v-5-ampere-tira-led-camaras-alarmas-_JM
Opcion 2:
http://articulo.mercadolibre.com.ar/MLA-602582193-fuente-swiching-12v-para-tira-de-led-camaras-2-amper-caseros-_JM
Opcion 3:
http://articulo.mercadolibre.com.ar/MLA-602368698-transformador-12v-3amper-_JM
Opcion 4 donde me gustaria sino es mucho pedir me expliques que funcion cumplen los whats en el trafo:
http://articulo.mercadolibre.com.ar/MLA-594739195-transformadores-220-volts-12-volts-4-amper-50-watts-_JM

Aparte de todo lo anterior, no me queda en claro si usarás una o dos series por cada segmento, pero te paso una imagen para que puedas darte una idea de lo que hablo:

Este display (en realidad varios de ellos) yo los uso en unos tableros tanteadores para basquet con muy buenos resultados. Los alimento con 24 volts.
Los círculos blancos son perforaciones para la sujección de los mismos.

La idea como para arrancar es esta. 6 leds por segmento y una resistencia de 330R por serie:

* 10x15_6LedsXseg_borde - copia.png
(3.2 kB, 283x425 - visto 1330 veces)


Q opinas?

Cabe aclarar que de cada pin de salida de los cd4015 salgo a una resistencia (de 1.2K para que sea casi insignificante el consumo para el 4511) y de ahi a un transistor 2n3904 para usar los segmentos a 12 volts, o sea que tendría 14 resistencias y 14 transistores para los 2 displays grandes, te parece que esta bien esto?

Mas adelante voy a armar uno como el que vos me enviaste que es mas vistoso.

La idea también es que tenga mando a distancia o control remoto que pienso armar, pero eso lo consultare mas adelante!

Cualquier duda consúltala.

Un saludo.

Atte. CARLOS.

Sos un crack Carlos, muchísimas gracias!
« Última modificación: 27 de Enero de 2016, 04:55:26 por luchoc »

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:duda con leds a 12 volts
« Respuesta #16 en: 27 de Enero de 2016, 11:47:35 »
Para agregar un poco mas

Citar
Mira acá te dejo una foto donde uso dos CD4015 para la multiplexion pero nose si lo estoy usando bien.

No hace falta 2 CD4511, Con uno solo es suficiente si no queres complicarte, + un par de transistores manejando los comun de los displays. Incluso podes no usar los 4511 para nada. Y usar los pines del PIC si tenes de sobra. Reduciendo los componentes



La programacion se hace mas compleja a medida que sacas componentes. Usando el diagrama de arriba, desactivarias todos los transistores, pondrias el dato (decena supongamos) en el 4511 y activarias el primer display, esperarias un tiempo, desactivarias todos los transistores , pones el el otro dato (unidades) en el 4511, activas el otro transistor, el de las unidades. esperas un tiempo y repetis.

Si no usas un 4511, lo que pongas en el puerto tiene que ser el valor para el 7 segmento en ves de un numero binario, asi que en tu programa deberias cambiar ese numero binario en un valor para el 7 segmentos. ( Simular un 4511 ).


Citar
Cabe aclarar que de cada pin de salida de los cd4015 salgo a una resistencia (de 1.2K para que sea casi insignificante el consumo para el 4511) y de ahi a un transistor 2n3904 para usar los segmentos a 12 volts, o sea que tendría 14 resistencias y 14 transistores para los 2 displays grandes, te parece que esta bien esto?

Solo recorda que los transistores no son llaves perfectas. Tiene una caida de tension en saturacion, para ese transistor esta entre 0.2 y 0.3V segun la carga que tenga. ( Datasheet: Collector-Emitter Saturation Voltage )

Desconectado luchoc

  • PIC10
  • *
  • Mensajes: 47
Re:duda con leds a 12 volts
« Respuesta #17 en: 29 de Enero de 2016, 10:31:11 »
Hola KILLERJC! Como estas?! te voy respondiendo entre lineas!

No hace falta 2 CD4511, Con uno solo es suficiente si no queres complicarte, + un par de transistores manejando los comun de los displays. Incluso podes no usar los 4511 para nada. Y usar los pines del PIC si tenes de sobra. Reduciendo los componentes



La programacion se hace mas compleja a medida que sacas componentes. Usando el diagrama de arriba, desactivarias todos los transistores, pondrias el dato (decena supongamos) en el 4511 y activarias el primer display, esperarias un tiempo, desactivarias todos los transistores , pones el el otro dato (unidades) en el 4511, activas el otro transistor, el de las unidades. esperas un tiempo y repetis.

Si no usas un 4511, lo que pongas en el puerto tiene que ser el valor para el 7 segmento en ves de un numero binario, asi que en tu programa deberias cambiar ese numero binario en un valor para el 7 segmentos. ( Simular un 4511 ).

Creo que es buena la idea pero no difiere mucho de lo que hice, acá también voy intercalando los displays para lograr lo de la multiplexion pero con dos cd4511, estaría muy bueno ahorrarme uno, y no por lo económico porque la verdad es que no salen nada acá pero si por el diseño de la pcb que son muchas pistas y es engorroso. Por otro lado, porque usas un transistor para manejar el común? yo en otras pruebas usaba un pin del pic en 0, entonces le daba gnd sin usar transistores, esta mal esto? funcionaba bien asi!

El problema por el cual use los decodificadores fue porque me hacían falta mas pines libres del pic16F84A y no saltar a un 16F877A de 40 pines ya que ese si es caro. Entonces de esta forma me quedan libres por lo menos 4 pines: boton(-), boton(+), boton reset y por ultimo un pin para el buzzer.

Solo recorda que los transistores no son llaves perfectas. Tiene una caida de tension en saturacion, para ese transistor esta entre 0.2 y 0.3V segun la carga que tenga. ( Datasheet: Collector-Emitter Saturation Voltage )
Perdoname mi amigo pero no entiendo bien, vos queres decir que calcule una resistencia según consuma el transistor? si es así creo que lo entendí porque me paso! Por ejemplo al principio use unas resistencias chicas de 100R y cada vez que encendía un segmento del display grande por medio del transistor se bajaba la luminosidad del segmento del display chico. Ahora estoy usando unas resistencias de 1.2k y van bien! por favor sentite libre de recomendarme lo que mejor creas, yo vine a aprender acá!

Nuevamente muchas gracias!!!

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:duda con leds a 12 volts
« Respuesta #18 en: 29 de Enero de 2016, 12:25:08 »
Citar
Creo que es buena la idea pero no difiere mucho de lo que hice, acá también voy intercalando los displays para lograr lo de la multiplexion pero con dos cd4511, estaría muy bueno ahorrarme uno, y no por lo económico porque la verdad es que no salen nada acá pero si por el diseño de la pcb que son muchas pistas y es engorroso. Por otro lado, porque usas un transistor para manejar el común? yo en otras pruebas usaba un pin del pic en 0, entonces le daba gnd sin usar transistores, esta mal esto? funcionaba bien asi!

Si,  esta mal, el pin de un PIC y el puerto (asi tambien todos los puertos) pueden manejar una cantidad limitada de corriente, en la parte electrica del datasheet del pic tenes:

Citar
Maximum output current sunk by any I/O pin...25 mA
Maximum output current sourced by any I/O pin ...25 mA

Maximum current sunk by PORTA ...80 mA
Maximum current sourced by PORTA...50 mA
Maximum current sunk by PORTB...150 mA
Maximum current sourced by PORTB ...100 mA

Que te dice que cada PIN el MAXIMO (obviamente jamas deberias llegar al maximo) puede aguantar 25mA de corriente entrante como saliente.
Si vos pensas que en el display 7 segmentos tenes 7 diodos conectados en paralelo, y supongamos encendes un 8 para encender todos con 15mA cada uno, en ese momento por el pin del PIC estarias intentando hacer pasar 105mA, lo cual es imposible, y por eso se usa un transistor.

Ese transistor habilita a todos los anodo/catodo de ese display.
Yo te dije que te ibas a complicar un poco mas con el programa ( asi que tenelo en cuenta a esto), pero si tu idea es ahorrar pines, entonces podrias quitar un CD4511, ya que solo necesitarias 4 para un CD4511 + 2 pines mas para activar los transistores y ya manejarias tus 2 display 7 segmentos.

Citar
El problema por el cual use los decodificadores fue porque me hacían falta mas pines libres del pic16F84A y no saltar a un 16F877A de 40 pines ya que ese si es caro.
Si te lo cobran mas caro es por que lo ven mas grande nomas, en la pagina de microchip el mas caro es el PIC16F84A dentro de esa flia.

Citar
Perdoname mi amigo pero no entiendo bien, vos queres decir que calcule una resistencia según consuma el transistor? si es así creo que lo entendí porque me paso! Por ejemplo al principio use unas resistencias chicas de 100R y cada vez que encendía un segmento del display grande por medio del transistor se bajaba la luminosidad del segmento del display chico. Ahora estoy usando unas resistencias de 1.2k y van bien! por favor sentite libre de recomendarme lo que mejor creas, yo vine a aprender acá!

Si ocurre eso es por que la fuente no mantiene estable la tension.
Lo que decia es que si miras el grafico que te pase sobre "multiplexado", y haces el mismo calculo que antes ahora deberia ser asi:

Voltaje de alimentacion = Caida de tension de 1 segmento + Caida de tension de resistencia + Caida de tension de transistor en saturacion

Supongamos que lo alimentas con 5V al CD4511, el led 2V y la caida del transisotr 0.3V, entonces seria:

5V = 2V + 0.3V + Vr
Vr = 5V - 2V -0.3V
Vr = 2.7V

Aca calculas tu resistencia para la corriente que quieras.

Desconectado luchoc

  • PIC10
  • *
  • Mensajes: 47
Re:duda con leds a 12 volts
« Respuesta #19 en: 29 de Enero de 2016, 17:03:26 »
Citar

Claro KILLERJC se entendió casi todo, jaja.

Voy a precisar de tu ayuda de nuevo porque evidentemente esta mal el camino que tome.

Mira hice este diseño en base a lo que vos me fuiste diciendo.

Diseño 1:

* contador_eco.jpg
(54.18 kB, 1000x782 - visto 1555 veces)


Diseño 2:

* contador_eco2.jpg
(68.37 kB, 1000x703 - visto 1743 veces)


Ambos diseños presentaron problemas:

* simulacion_error.jpg
(41.85 kB, 781x215 - visto 1231 veces)


La programacion sin dudas es el problema principal:
Código: [Seleccionar]
DEFINE osc 4 'Definimos la frecuencia
allDigital
TRISB = 0

INICIO:

PORTB = 00001111
high PORTB.4
LOW PORTB.5
pause 1
low PORTB.4
high PORTB.5


pause 1
goto inicio

Te pido ayuda con el código para poder mostrar uno y otro display.
Por otro lado quería saber que me recomendas, si el diseño 1 o el 2, el diseño 1 no tiene los transistores en la placa donde estará el pic pero si estará en el diseño que hice del display:

* 7seg_1.jpg
(49.43 kB, 505x593 - visto 1243 veces)


La verdad es que estoy bastante perdido porque son muchas pistas y veo q a la hora de diseñar la placa se me va a complicar bastante, todo lo que puedas recomendarme te lo agradeceré!

Por si es de ayuda aca dejo un link con los archivos de PROTEUS por si preferís verlos en el programa.
Descarga

Muchas gracias por la mano!
« Última modificación: 29 de Enero de 2016, 17:20:58 por luchoc »

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:duda con leds a 12 volts
« Respuesta #20 en: 29 de Enero de 2016, 17:36:40 »
Ahora se complica un poco pense que el display de adentro no iba a tener relacion con el de afuera.. Pero no tanto..

Los transistores deben tener una corriente definida en la base, si te excedes vas a quemarlo, por eso es necesario una resistencia de base.
Por ahora me limito a el diseño del display 7 segmentos. Con una resistencia de base de 4.7k deberia ser suficiente para aguantar todos los leds a 20mA cada uno (sigo refiriendome al display 7 segmento).

Ahora  solo quedaria calcular la resistencia del 4511 hacia los displays, por que 150 me parece muy poco. Cuando normalmente uno usa 330 para 5V.

Y luego esta tu display mas grande. Se me ocurren 2 cosas.

1- El cual de manejarlo con el mismo 4511 seria bastante complicado (por el multiplexado que te obligaria a usar PNP que aguatnen la tension etc), y tal ves sea mejor poner el otro 4511 (uniendo sus entradas ABCD con el otro 4511 respectivamente) alimentado con 12V (este solo) y que sea este el que maneje los 7 segmentos, supuestamente la entrada para una tension de 10V que es lo mas proximo a 9-12V, es de 3 a 4V, con lo cual el PIC deberia llegar a generar esa tension de salida para que el 4511 responda. Luego las salidas irian con su resistencia + diodos, y el final de esas series a otro transistor ( casi una copia de los 7 segmentos ).

No creo que afecte que tengas un 4511 alimentado a mas tension. Pero jamas lo probe. asi que es una cuestion de ver si se quema o no :P
Lo unico que realizado de esta forma la corriente que podrian menjar los 4511 es de 8mA para no superar la potencia maxima de ese encapsulado en 12V (lo cual no preocupa en 5V).
Si se quisiera mas corriente habria que agregar otro transistor mas, + resistencia de base, si se desea seguir con la "multiplexacion"

2- Y la otra que se me ocurre es que sigas como estabas haciendo, es decir 2 4511 de la forma que lo hacias sin multiplexar y deberias poner un transistor para cada segmento con una resistencia de base. Esto seria lo mas simple de hacer, por que ya tenes hecho el programa asi, lo que si va a ser feo es routear todos esos caminitos.


Es esto o que alguno aporte otra solucion mas simple y que no se me ocurrio en el momento.
El tema no esta en si es simple, pero me la complico la falta de pines... o intentar con la mismas salidas (sin usar mas) que funcionen los 2 displays.
PD: Chaly sabe y tiene mas experiencia que yo.

Desconectado luchoc

  • PIC10
  • *
  • Mensajes: 47
Re:duda con leds a 12 volts
« Respuesta #21 en: 29 de Enero de 2016, 18:06:42 »
Si KILLERJC lo veo muy engorroso de ambos modos. Ojo q si te fijas bien mi diseño si multiplexaba, el tema era como trabajar el resto y un error al restar y llegar a 0.

Al margen de eso yo no tengo problemas en empezar desde cero la idea es hacerlo bien por eso estoy de acuerdo con esperar a Chaly29 ya que por lo que comentaba en post anteriores el se dedica a la fabricación de tanteadores y etc.

Chaly29 quedo en tus manos jaja.

Gracias por la ayuda KILLERJC!

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:duda con leds a 12 volts
« Respuesta #22 en: 31 de Enero de 2016, 21:32:01 »
Hola luchoc, perdona la demora, esta es mi opinión:

Primero: Deja de osar el 16F84, es un PIC caro y bajo ciertas condiciones se le corrompe el programa y deja de funcionar hasta que vuelvas a programarlo, en su lugar puedes usar el 16F628 que aparte de igual o menor precio tiene muchas más posibilidades

Segundo: si necesitas un PIC de más pines pueden pasarte al 16F870, no mucho más caro que el 16F84 y es un PIC de 28 pines.

Tercero: El CD4511 es de tecnología CMOS, por lo que no es muy compatible con el PIC, por lo que te recomiendo pases a un integrado de la familia TTL, el 74LS48 tiene la misma distribución de pines y funciona de manera muy similar. Y es 100% compatible con un PIC.

Con respecto a los circuitos que estás implementando, pues los veo muy complicado y poco eficientes. Si deseas el uso del CD4511 (74LS48) te recomiendo el siguiente:


* Con 74LS48.png
(5.06 kB, 1133x605 - visto 1309 veces)


El circuito es muy sencillo de comprender, el 74LS48 puede ser reemplazado por el CD4511, pero no lo recomiendo. Uso los BC337 porque en el mismo tamaño de encapsulado que el 2N3904, soportan el triple de corrientes que este último, y por el mismo precio.

Los TIP125 en tu caso no creo, pero a veces deben estar montados sobre disipador.

Claro está que este circuito es para display bastantes más potentes que el que tu estas por implementar, pero un poco de potencia extra nunca está demás.

Los display a usar deben de ser de ánodo común, pero como nosotros (en realidad tú) puedes implementar cualquiera de ambos, es lo mismo.

Por supuesto con este circuito se usa el multiplexado para el refresco de los display, y el programa es muy similar al que ya posees, la diferencia principal esta en el circuito de control de los display.

Si no deseas usar el 78LS48 (CD4511), puedes usar el circuito de a continuación, es igual al anterior, pero la función de "decodificación" debe de ser implementada dentro del mismo PIC, por supuesto usa algunos pines más de este, pero el circuito es sustancialmente más sencillo de implementar. Este sería ideal para usar con el 16F870:


* Sin 74LS48.png
(4.49 kB, 1133x673 - visto 1441 veces)


Verás es muy similar, por supuesto el programa se complicará levemente, pero justifica la sencilles extra del circuito y a la hora del diseño de la PCB.

Con respecto a la fuente a usar, pues te recomendaría una fuente de las comunes (con trafo) que la construyas tu mismo, y con una tensión de alrededor de los 18V para alimentar a los display y 5V para la lógica de control.

El uso de una fuente switching en este caso no te lo recomiendo, porque igualmente deberás de realizar una fuente para reducir la tensión a los 5V necesarios a la lógica y este tipo de fuentes ya es más complicado encontrarlas con tensiones de alrededor de los 18V. Aparte la vida útil de estas es muy inferior a las realizadas de manera tradicional.

Espero esté más claro el tema, cualquier consulta solo tienes que preguntar, y perdona el retraso en la respuesta.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado luchoc

  • PIC10
  • *
  • Mensajes: 47
Re:duda con leds a 12 volts
« Respuesta #23 en: 02 de Febrero de 2016, 12:30:31 »
Hola luchoc, perdona la demora, esta es mi opinión:

Hola Charly29! Antes que nada te quiero agradecer por compartir tu conocimiento y dedicar tiempo a mi proyecto y aprendizaje.[/quote]

Citar
Primero: Deja de osar el 16F84, es un PIC caro y bajo ciertas condiciones se le corrompe el programa y deja de funcionar hasta que vuelvas a programarlo, en su lugar puedes usar el 16F628 que aparte de igual o menor precio tiene muchas más posibilidades

Tengo por suerte 2 PIC16F628 así que no habría problemas de arrancar con las pruebas. Respecto a los precios acá salen mas o menos lo mismo también. La verdad hasta ahora no me fallo en ninguna prueba el PIC16F84A pero ya lo dejo de lado para arrancar a trabajar con el pic que me recomendaste!

Citar
Segundo: si necesitas un PIC de más pines pueden pasarte al 16F870, no mucho más caro que el 16F84 y es un PIC de 28 pines.

Ese pic aca sale $200 y el PIC16F877A esta $160, por algún motivo es mas caro el de 28 pines que el de 40.

Citar
Tercero: El CD4511 es de tecnología CMOS, por lo que no es muy compatible con el PIC, por lo que te recomiendo pases a un integrado de la familia TTL, el 74LS48 tiene la misma distribución de pines y funciona de manera muy similar. Y es 100% compatible con un PIC.

No hay ningún problema, tengo 2 74LS48 para empezar las pruebas! podrías explicarme sino es molestia que significa lo de cmos, porque no son compatibles? Lo único que entiendo por cmos es la memoria de la pc jaja.

Citar
Con respecto a los circuitos que estás implementando, pues los veo muy complicado y poco eficientes. Si deseas el uso del CD4511 (74LS48) te recomiendo el siguiente:



El circuito es muy sencillo de comprender, el 74LS48 puede ser reemplazado por el CD4511, pero no lo recomiendo. Uso los BC337 porque en el mismo tamaño de encapsulado que el 2N3904, soportan el triple de corrientes que este último, y por el mismo precio.

Los TIP125 en tu caso no creo, pero a veces deben estar montados sobre disipador.

Claro está que este circuito es para display bastantes más potentes que el que tu estas por implementar, pero un poco de potencia extra nunca está demás.

Los display a usar deben de ser de ánodo común, pero como nosotros (en realidad tú) puedes implementar cualquiera de ambos, es lo mismo.

Por supuesto con este circuito se usa el multiplexado para el refresco de los display, y el programa es muy similar al que ya posees, la diferencia principal esta en el circuito de control de los display.

Lo que es componentes tengo todo en stock por suerte, pero no comprendo bien, la multiplexion la realiza el 74LS48 o la tengo que programar? porque de ser asi sinceramente no sabría como hacerla.

Citar
Si no deseas usar el 78LS48 (CD4511), puedes usar el circuito de a continuación, es igual al anterior, pero la función de "decodificación" debe de ser implementada dentro del mismo PIC, por supuesto usa algunos pines más de este, pero el circuito es sustancialmente más sencillo de implementar. Este sería ideal para usar con el 16F870:



Verás es muy similar, por supuesto el programa se complicará levemente, pero justifica la sencilles extra del circuito y a la hora del diseño de la PCB.

Con respecto a la fuente a usar, pues te recomendaría una fuente de las comunes (con trafo) que la construyas tu mismo, y con una tensión de alrededor de los 18V para alimentar a los display y 5V para la lógica de control.

El uso de una fuente switching en este caso no te lo recomiendo, porque igualmente deberás de realizar una fuente para reducir la tensión a los 5V necesarios a la lógica y este tipo de fuentes ya es más complicado encontrarlas con tensiones de alrededor de los 18V. Aparte la vida útil de estas es muy inferior a las realizadas de manera tradicional.

No se habla mas Charly29, aca el que sabe sos vos y yo sigo tus recomendaciones al pie de la letra, es por eso que vamos a ir por el ejemplo 1 que ya mismo me pongo a desarrollar en ISIS.

Citar
Espero esté más claro el tema, cualquier consulta solo tienes que preguntar, y perdona el retraso en la respuesta.

Un saludo.

Atte. CARLOS.

Por favor gracias a vos y no hay ningún problema, cada uno con sus tiempos!

En un par de horas te estaré mostrando novedades!

Saludos!
« Última modificación: 25 de Abril de 2016, 06:30:32 por xocas »

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:duda con leds a 12 volts
« Respuesta #24 en: 02 de Febrero de 2016, 13:54:40 »
Hola luchoc, como andas?

Tengo por suerte 2 PIC16F628 así que no habría problemas de arrancar con las pruebas. Respecto a los precios acá salen mas o menos lo mismo también. La verdad hasta ahora no me fallo en ninguna prueba el PIC16F84A pero ya lo dejo de lado para arrancar a trabajar con el pic que me recomendaste!

A mi me a fallado en dos ocasiones, el F84 montado sobre vehículos, se ha desprogramados y vuelto a cargar el programa funciona de manera correcta, de todas maneras me e enterado que a varios usuarios le a pasado lo mismo, en ves, con el F628 ya no pasa esto.

Ese pic aca sale $200 y el PIC16F877A esta $160, por algún motivo es mas caro el de 28 pines que el de 40.

Creo que tu "acá" significa Argentina verdad? Yo también soy Argentino. Estoy al sur de Santa Fe.

No hay ningún problema, tengo 2 74LS48 para empezar las pruebas! podrías explicarme sino es molestia que significa lo de cmos, porque no son compatibles? Lo único que entiendo por cmos es la memoria de la pc jaja.

OK, CMOS y TTL son tecnologías de fabricación de integrados, búscalos por google integrados CMOS o integrados TTL y conseguirás mucha información.
La incompatibilidad entre CMOS y PIC está principalmente basada en los tiempos de propagación del CMOS (es mucho más lento que el PIC) y los umbrales de tensión entre ambos, o sea que los que CMOS interpreta como LOW y HI es distinto a como lo interpreta por ejemplo un PIC.

Lo que es componentes tengo todo en stock por suerte, pero no comprendo bien, la multiplexion la realiza el 74LS48 o la tengo que programar? porque de ser asi sinceramente no sabría como hacerla.

El 74LS48 o el CD4511 lo único que hacen es la decodificación de BCD a 7 segmentos, la multiplexión la debes de realizar por medio del PIC, multiplexar un display significa que nunca ambos dígitos entan encendidos al mismo tiempo, primero enciendes uno con el dato que corresponda y luego el otro con su respectivo dato. Creo que esto ya lo había explicado KILLER

No se habla mas Charly29, aca el que sabe sos vos y yo sigo tus recomendaciones al pie de la letra, es por eso que vamos a ir por el ejemplo 1 que ya mismo me pongo a desarrollar en ISIS.

Pues, esto no es una tiranía, por lo que uno da consejos, pero el consultante es el que decide que desea hacer, porque no solo quemamos haciendo las cosas mal, si no que también aprendemos.  :mrgreen:

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:duda con leds a 12 volts
« Respuesta #25 en: 02 de Febrero de 2016, 14:13:54 »
Perdon por el offtopic. Yo solo vengo a aportar una cosa:

No se habla mas Charly29, aca el que sabe sos vos y yo sigo tus recomendaciones al pie de la letra, es por eso que vamos a ir por el ejemplo 1 que ya mismo me pongo a desarrollar en ISIS.

De ahora en adelante sos el Charly Brown del foro Carlos. :P
No te voy a decir mas Chaly sino Charly. ( broma  :D )

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:duda con leds a 12 volts
« Respuesta #26 en: 02 de Febrero de 2016, 17:24:58 »
Hola KILLERJC, pues Charly29 debería de ser mi nick, pero el apuro por registrarme en el foro y un error en el tipeo me jugaron en contra y ahora soy simplemente Chaly29.

Lo bueno es que ahorro una letra al escribir  :D

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado luchoc

  • PIC10
  • *
  • Mensajes: 47
Re:duda con leds a 12 volts
« Respuesta #27 en: 04 de Febrero de 2016, 22:43:44 »
Hola muchachos como andan?!

Les cuento que no eh tenido mucha suerte con la programacion, esto es lo que hice a modo demo para probar lo de la multiplexion:
Citar
DEFINE osc 4 'Definimos la frecuencia
allDigital

TRISA.0 = 1
TRISA.1 = 1
TRISA.2 = 1
TRISB = 0
UNIDEC VAR BYTE : UNIDEC = 0

INICIO:
    IF UNIDEC=0 THEN
        PORTB=%010110         
        UNIDEC = 1
        PAUSE 10
        GOTO INICIO
    ENDIF
    IF UNIDEC=1 THEN
        PORTB=%100001         
        UNIDEC = 0
        PAUSE 10
        GOTO INICIO
    ENDIF
    GOTO INICIO   
END

Sin dudas que esta mal porque se ve muy pausado cuando pasa entre la unidad y la decena y luego de un tiempo en ISIS se muestra el siguiente error:


Este es el diseño en ISIS:
« Última modificación: 25 de Abril de 2016, 06:29:32 por xocas »

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:duda con leds a 12 volts
« Respuesta #28 en: 04 de Febrero de 2016, 23:48:29 »
Hola luchoc, por supuesto que tal como está el programa no te funcionaría.

* El primer error que veo, es que solo estás trabajando con el dígito de las decenas u el de las unidades no lo tomas en cuenta.

* Luego y aunque las decenas sean = 0, pues igual debes de incorporarlas al multiplexado.

Y como no programo en Basic, pues solo te daré unas simples pautas para que realices el programa:

Suponiendo las variables:

Decenas
Unidades

Colocamos el valor de Decenas (codificación BCD) en los pines B0, B1, B2, y B3.
Pin B4 en alto.
Pausa de 100 useg (ejemplo)
Pin B4 en bajo

Colocamos el valor de Unidades (codificación BCD) en los pines B0, B1, B2, y B3.
Pin B5 en alto.
Pausa de 100 useg (ejemplo)
Pin B5 en bajo

Y vuelta a empezar.

Eso es un multiplexado, primero encendemos un display y luego el otro, por supuesto con los valores debidos, terminado con el último display volvemos al primero. Esto se debe de repetir en un bucle continuo de parejo, de lo contrario verás "apagones" o "destellos" indeseados en el display.

Espero te sea de ayuda.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:duda con leds a 12 volts
« Respuesta #29 en: 04 de Febrero de 2016, 23:50:22 »
Y una cosa mas... empeza a probarlo en el PIC, por que en la simulacion parece MUUUUY lento , como se nota que se encienden y apagan, es decir para la simulacion podrias comentar el "PAUSE". Pero en fisico deberias tener esa pausa.