# PWM y Optoacoplador



## adrigt11 (Jul 25, 2015)

Hola a todos

Tengo el siguiente caso: con un Arduino controlo a través de una señal PWM un motor DC. Como uso dos alimentaciones con las masas separadas, tengo que utilizar un optoacoplador. Necesito que la señal PWM de la salida del Arduino este igual de clara y perfecta en el "otro" lado del optoacoplador. 

Tal como se ve en la imagen adjunta he usado el 4N35 que tiene un CTR del 100%. La resistencia del led es de 330 ohmios para proporcionar una If=10mA. En el transistor del optoacoplador lo he polarizado en colector común con una resistencia del emisor a masa. En la base del transistor he colocado una resistencia de 2M2 para mejorar la velocidad de conmutación.  En la salida he colocado dos inversores HFC4069 para mejorar el señal saliente del optoacoplador y también para volver a invertir el señal. 

A parte de hacer los cálculos también lo he comprobado midiendo con un osciloscopio para ver el señal PWM saliente como respondía. El problema es que si ponía la R del emisor alta (10K, 4K7 o 1K) obtengo una señal PWM mal. Es decir, con los inversores conseguía una onda cuadrada perfecta pero tanto el inicio como el final del PWM se lo "comía". Por ejemplo cuando el señal PWM directo del Arduino estaba al 25%, en la salida del optoacoplador  aún estaba a 0. Y cuando en la salida del optoacoplador el PWM estava al 100% en realidad el PWM original del Arduino estava al 80%.
Haciendo varias pruebas, he comprobado que la R del emisor tiene que ser muy baja (220 ohmios en este caso) para que el señal PWM sea lo más perfecto posible al PWM original del Arduino. El problema es que la Ic es bastante elevada (32mA), aunque el 4N35 puede aguantar hasta 100mA.

Mi duda es si hay alguna otra alternativa de configuración o polarización del optoacoplador para poder transmitir a la perfección un PWM. 

Gracias


----------



## chclau (Jul 25, 2015)

Lo que se me ocurre es tomar la salida por colector. Emisor del opto a tierra sin resistencia de carga, resistencia de pull-up en colector y tomar la salida del colector.


----------



## adrigt11 (Jul 25, 2015)

Si también lo he probado y nada, el señal PWM está también imperfecto.


----------



## chclau (Jul 25, 2015)

Cual es el periodo de tu PWM? Yo hice pruebas teoricas (simulaciones con LTSpice) con 1kHz, con un 4n25 con resistencia de LED de 270 Ohm, tension de excitacion de 5V en el PWM , resistencia de base de 200K con capacitor en paralelo de 47pF, y resistencia de colector de 2K y los resultados son buenos.


----------



## adrigt11 (Jul 25, 2015)

La frecuencia del PWM es de 15KHz. En las simulaciones es normal que la señal este bien, a mi también me sale bien. Pero a la practica, comprobando con el osciloscopio la señal es mala. Solo con resistencia de muy bajo valor en la salida se consigue la señal perfecta. No sé si en este caso se tendría que usar algún otro modelo de optoacoplador.


----------



## chclau (Jul 25, 2015)

Es realmente necesaria una frecuencia tan alta?


----------



## adrigt11 (Jul 25, 2015)

Si, para no escuchar el ruido sonoro procedente del motor causado por la frecuencia


----------



## juanma2468 (Jul 25, 2015)

Igual con 15Khz se puede llegar a escuchar el tipico chillido de la conmutación. Por otro lado ten en cuenta que al aumentar la frecuencia de conmutación sobre las bobinas del motor acarrea una sobre elevación de tensión mayor que a una frecuencia más baja, lo cual driver tendra que ser capaz de soportar esos picos de tensión.


----------



## adrigt11 (Jul 26, 2015)

He probado con esta frecuencia i no se escucha nada. Con frecuencias más bajas si que se escucha. El tema del driver ja lo tengo controlado el tema de la conmutación.


----------



## adrigt11 (Ago 9, 2015)

Lo que no entiendo es que si el 4N35 tiene un CTR de 100% cuando If=10mA, ¿porque tengo Ic=32mA?¿No tendría que ser la relación 1:1 o es que la resistencia de base a masa de 2M2 lo provoca?


----------



## chclau (Ago 10, 2015)

y como resolviste los problemas que tenias?

La resistencia de base no mejora el CTR, al contrario, lo empeora porque "roba" parte de la corriente de base. Los numeros que decis son un poco raros, como estas midiendo?


----------



## juanma2468 (Ago 10, 2015)

Yo armaria el circuito de la siguiente manera. Inclusive haste se podria evitar de colocar un CD4049 reemplazando la compuerta por un simple transistor BC548 para usarlo como inversor.


----------



## adrigt11 (Ago 10, 2015)

Si ya lo he probado de esta manera, pero el problema que tengo es que el PWM no se transmite exactamente como sale del pin Arduino como he expuesto antes. La única manera es con el circuito que he adjuntado en el primer mensaje, o sea, con una resistencia en el emisor de 220 ohmios. De esta manera consigo una señal PWM perfecta, al contrario que otros diseños como por ejemplo el tuyo (cosa que no entiendo porque en teoría tendría que ir bien también, pero a la practica no).

Pero mi duda esta en porque teniendo una If=10mA con un CTR de 100%, tengo una Ic=32mA. Esto lo he medido con un amperimetro en la practica. Claro que lo que provoca este alto consumo es sobretodo la resistencia de 220 ohmios del emisor que polariza el transistor. Pero no entiendo el dato del CTR.

Si alguien lo entiende por favor que me lo explique.


----------



## juanma2468 (Ago 10, 2015)

Pues, segun la hoja de datos las curvas son para If vs Ic, y tu estas saliendo por la pata de emisor. Prueba de cambiar el arreglo de manera de obtener una salida por colector y no por emisor, y verifica nuevamente la corriente. Si persiste la diferencia, prueba de cambiarlo y probar con otro.


----------



## adrigt11 (Ago 10, 2015)

Pero la corriente de colector es la misma que la de emisor. También lo he probado polarizando a emisor común y lo mismo.


----------



## juanma2468 (Ago 10, 2015)

Es raro lo que te ocurre, probaste de cambiarlo por otro?


----------



## adrigt11 (Ago 10, 2015)

¿Otro modelo de Optoacoplador?


----------



## juanma2468 (Ago 10, 2015)

Otro modelo u otro del mismo tipo. Otro modelo puede ser el  PC817 que no necesita R de base


----------



## adrigt11 (Ago 10, 2015)

Del mismo tipo si y lo mismo. Otro modelo diferente no. La R de base en teoría ayuda a la velocidad de conmutación. 

Si en realidad este circuito me va perfecto para lo que quiero, es simplemente que no acabo de entender lo del CTR del datasheet, ya que no me coincide nada. 

Otro dato que he medido con el tester es la caída de voltaje entre colector-emisor del transistor del opto, que de es 5V. Y la Ic=32mA cuando el PWM está al 100%.


----------



## juanma2468 (Ago 10, 2015)

El CTR cuando se encuentra al 100% significa que la corriente del diodo debe ser igual a la del colector, por lo que si tienes If=10mA, deberias tener lo mismo a la salida


----------



## adrigt11 (Ago 12, 2015)

Si, pero e 4N35 el CTR es 100% mínimo, por lo tanto puede ser más. Dependiendo del datasheet que mires puede llegar a tener un CTR del 300% como la imagen que adjunto. Aquí con estos datos ya me cuadran más.


----------



## alejandro pino (May 22, 2018)

hola...con respecto a esto me sucede algo parecido...estoy generando una señal de pwm con un microcontrolador de 125KHz (la configure asi pero puede ser menor, no obstante no menor de 15KHz) para controlar una fuente conmutada buck.el problema es que la masa del uC no es la misma que la de la fuente y el pwm debe estar aislado. 
el tema es que como la señal es de alta frec, no se si pueda pasarlo por un optoacoplador...el que tengo a mano es el CNY74 (adjunto datasheet). de no ser posible, como mas pudiera acoplar una señal de este tipo bajo estas condiciones??? (pense en algunas ideas como ponerle un operacional en buffer, o una resistencia alta (de par de Mohms) en serie entre el gate del fet y la señal, o tal vez no necesite acoplamiento debido a la alta frecuencia, en fin.......)

me pueden ayudar por favor?
agradecido de antemano
saludos a todos


----------



## Gudino Roberto duberlin (May 22, 2018)

Hola, seguramente el optoacoplador tenga problemas a esas fcias. Pero puedes usar un transformador driver, similar a la que utilizan las fuentes conmutadas.


----------



## DOSMETROS (May 22, 2018)

Con un toroide de lámpara de bajo consumo y dos bobinados de unas 10 espiras creo que ya estarías.


----------



## Scooter (May 22, 2018)

Lee el datasheet a ver que dice, en general 100kHz o así sería el límite, dependerá del modelo.
Seguramente a 125kHz ya no funcione correctamente.


----------



## Fogonazo (May 22, 2018)

Como te comentan casi con seguridad el opto funcione mal a esas frecuencias, salvo que sea específico para hacerlo.

Como alternativa tienes opto´s de alta velocidad o con salidas de estados lógicos (1-0)


----------



## alejandro pino (May 22, 2018)

Gracias a todos por las respuestas...la idea del trafo ya la había pensado también pero la descarté debido a que necesitaría un trafo con nucleo de ferrita por la frecuencia, y eso aca en Cuba es casi imposible de conseguir, y menos de armar con los parámetros necesarios. Con lo del toroide es la misma cosa.  con respecto a los optos de alta velocidad que menciona Fogonazo aca en Cuba no es posible comprar ese tipo de componentes.

Estuve generando ideas mientras me desconecte y se me ocurrio hacer lo siguiente. Con el optoacopler que tengo calculé la frecuencia máxima de señal que le puedo pasar en base a los retardos y demoras que indica el datasheet. (el inverso de la suma de todos estos tiempos) y me dio 25Khz mxm. Entonces pense en la librería de arduino servo.h que emplea pwm para controlar motores a frecuencias mucho mas bajas (490Hz) y esto pincha ok, por lo que en teoría mi pwm debe funcionar al menos a 15KHz y a esta frecuencia si lo puedo pasar por el optoacopler...
Esta idea ahora mismo la estoy simulando con OrCAD a ver si pincha de veras como pienso..luego voy y lo pruebo en físico...les digo los resutados en cuanto los tenga y adjunto formas de onda de spice

saludos a todos nuevamente


----------



## pandacba (May 22, 2018)

El *ACPL-C79A-500E*  te podría servir trabaja hasta 200khz.
Otro puede ser el *IL300-DEFG-X016 *


----------



## Fogonazo (May 22, 2018)

Estos engendros extienden la respuesta en frecuencia de opto-acopladores comunes y silvestres


----------



## alejandro pino (May 22, 2018)

Es decir que aumenta el ancho de banda del optoacoplador???


----------



## Dr. Zoidberg (May 22, 2018)

alejandro pino dijo:


> Es decir que aumenta el ancho de banda del optoacoplador???


No se lo que es "ancho de banda" de un optoacoplador, pero lo que hacen estos ultimos circuitos es ayudar a eliminar los portadores usando la base - que normalmente nadie usa - como vía de "descarga".


----------



## pandacba (May 22, 2018)

Ya vienen echos, como algunos de los que puse, no son los únicos y existen desde hace mucho tiempo, tanto para el control de motores como fuentes switching


----------



## Fogonazo (May 22, 2018)

Estos son opto´s muy rápidos, pero en general difíciles de conseguir

6N135
6N136
HCNW135
HCNW136
HCNW4502
HCNW4503
HCNW4504
HCPL-0452
HCPL-0453
HCPL-0454
HCPL-0500
HCPL-0501
HCPL-0530
HCPL-0531
HCPL-0534
HCPL-2502
HCPL-2530
HCPL-2531
HCPL-4502
HCPL-4503
HCPL-4504
HCPL-4534
HCPL-J454
HCPL-M452
HCPL-M453
HCPL0454
HCPL2530
HCPL4504
HDC135
DC135B


----------



## alejandro pino (May 22, 2018)

gracias por la info Fogonazo..estoy explorando tus opciones ahora mismo...de verdad gracias
saludos


----------



## pandacba (May 22, 2018)

El primero que mencione lo tiene Farnell
También Mouser tiene muchos
Recién veo que estas en cuba


----------

