¿Sabéis por qué no ha funcionado y qué puedo hacer para mejorar?
El filtro sólo puede promediar su señal en un valor DC. Si conectaras directamente un multímetro de tensión continua a tu señal pulsante, obtendrías exactamente el mismo valor de CC.
$$\boxed{\text{In other words, the filter isn't bringing any magic to the party}}$$
Si quieres hacerlo de forma más efectiva podrías utilizar un circuito monoestable. El monoestable se activaría con el flanco ascendente positivo de tu señal de control del servo digital. Producirá un pulso de duración de alrededor de 1,5 ms (es decir, se agotará a mitad de camino entre los dos tiempos de nivel lógico).
Y, cuando ese pulso se agote, utilizarías ese evento para muestrear la señal digital de control del servo. Es probable que utilice un flip-flop de tipo D para esto y la salida se resolvería a un 0 o un 1 que representa el nivel lógico detrás de la salida de la señal de control del servo digital.
Así es como yo lo haría de todos modos.
Podrías usar un comparador después de que tu señal filtrada haga la salida lógica pero entonces hay otras cosas a considerar como cuánta histéresis se necesita, cuánto filtrado RC se necesita y cuánto tiempo de retardo se puede tolerar debido al filtro. El monoestable/flip-flop resolverá el valor digital en un ciclo (20 ms) como máximo.
0 votos
Su filtro le da más o menos la media de su señal. La media de una señal PWM que va de 0 a 5v no puede ser cero ya que cualquier cosa mayor que cero promediada con cero sigue dando un valor distinto de cero.
0 votos
Creo que asumí que este era el caso, pero aún así el límite superior es de sólo 295 mV mientras el circuito es alimentado por 5v. ¿Sabe usted por qué es eso? Sólo quiero conseguir niveles lógicos para que la lógica baja < 0,3 V y la lógica alta > 2,7 V sea suficiente. ¿Qué debo hacer para conseguirlo?
2 votos
No se trata de una forma de onda PWM normal, sino de una señal de control "PWM" para un servo de aficionado. Un filtro de paso bajo muy por debajo de la frecuencia de cuadro (como 5 Hz) "funcionará" pero dará resultados decepcionantes, como oscilar entre el 5% y el 10% de la tensión del pulso. Necesitas algo que pueda distinguir entre pulsos de 1 ms y 2 ms : podrías hacerlo con un par de 555s y puertas, o en software en un Arduino.
0 votos
¿Qué quieres decir con "resultados decepcionantes"? Estoy planeando utilizar la tensión de CC de salida para encender y apagar un transistor
0 votos
La tensión media que debe dar su filtro para un pulso de 1 ms es de 5 V * 1 / 20 = 0,25 V. Para un pulso de 2 ms es de 5 V por 2 / 20 = 0,5 V.
0 votos
Gracias @Transistor creo que ahora entiendo el cálculo básico. Sin embargo, requiero que mi circuito dé salida a valores lógicos bajos y altos donde el bajo sea menor a 0.3V y el alto mayor a 2.7V. ¿Hay alguna manera de amplificar la salida o el control spessific transistor de tensión de base para lograr lo que estoy tratando de hacer? ¿Hay alguna manera básicamente?
0 votos
Hay una respuesta que muestra cómo hacerlo. También puedes comprar estos interruptores RC ya hechos.
0 votos
Me encantaría un enlace a un interruptor listo por favor señor.
2 votos
Utilice un servoactuador para accionar un interruptor de palanca.
0 votos
Quizás quieras buscar en Google "rc switch digital output". No es tan divertido como construir uno propio, por supuesto, y ni de lejos lo que propone @Transistor.
0 votos
¿Hay alguna manera de copiar este esquema publicado a mi propio esquema de pcb y utilizar los componentes allí. Estoy planeando hacer ingeniería inversa del interruptor después de pedir uno. ¿Se puede robar?
0 votos
¿Por qué esperabas que fuera 0V o 5V? Los electrones están haciendo exactamente lo que les dijiste.