Servocontrol SG90 sin microcontrolador
Cogió a la mano el popular y económico servo SG90. Y pensé en administrarlo, pero sin un microcontrolador. En este artículo, describiré la mentalidad del desarrollador cuando implemente una de las opciones de solución.A quién le importa, por favor, debajo del gato.Idea
Es necesario controlar el servo, pero sin un microcontrolador.Conocimiento
Todos saben que la experiencia y el conocimiento ayudan a crear y encontrar soluciones. Hay muchos ejemplos del uso de un servoaccionamiento con el uso de controladores en las páginas de Giktims. Describen en detalle sobre el sistema de servocontrol. Tomaremos esta experiencia de otros desarrolladores por el conocimiento que necesitamos para resolver el problema. El servodrive SG90 está controlado por una señal PWM cuyos parámetros determinan la posición del rotor. El período PWM es de aproximadamente 20 ms, la duración de la señal de control es de 500 a 2100 μS.Desafío
La idea y el conocimiento dan lugar a un problema que debe resolverse. Formulamos el problema para la realización de la idea. Esto es algo así como un Términos de referencia. Parece que todo es simple, debe tomar un generador de impulsos con un ciclo de trabajo variable, conectar la alimentación al servoaccionamiento y aplicar una señal de control desde el generador. Hacemos hincapié en que hay cambios en el ciclo de trabajo en los requisitos, es decir, debe haber controles o una interfaz de usuario.Implementación
Aquí es donde comienza la agonía de la creatividad: ¿qué llevar y dónde conseguirlo? Puede encontrar un generador de pulso de laboratorio ya preparado, por ejemplo, G5-54 con manijas, botones, establecer los parámetros necesarios, conectar el generador a un servoaccionamiento. Sin embargo, es engorroso y no todos pueden permitirse ese lujo. Por lo tanto, los desarrolladores, confiando en su experiencia y conocimiento, intentan combinar el deseo (idea-tarea) y las oportunidades (material y creativo) para la implementación de la tarea. Las posibilidades materiales son ese "sapo""¿Cuánto y qué quiero gastar en implementar una idea?" La creatividad es: "Veré lo que ya tengo". Estos no son necesariamente algunos valores materiales, sino la experiencia y el conocimiento de desarrollos anteriores que pueden adaptarse a la implementación. Además, no será superfluo buscar (google) que alguien ya haya implementado algo similar. Para reducir las opciones de solución, usted mismo necesita agregar requisitos adicionales que limiten las fantasías de implementación. Por ejemplo, agregamos una condición más a los requisitos, dejemos que sea una limitación material, la implementación debe ser económica .Busca alternativas
Usando Internet, buscamos opciones que ofrece la red. Establecimos en la búsqueda: "un generador de pulso rectangular con un ciclo de trabajo variable". Obtendremos muchas opciones, tanto con el uso de temporizadores integrados NE555 (análogo doméstico de KR1006VI1) como en circuitos lógicos. De toda la variedad, elegí la opción de un generador en un inversor con un disparador Schmitt en la entrada. En primer lugar, es el más simple y, en segundo lugar, requiere un mínimo de detalles y el más interesante utiliza un único elemento lógico de seis, si, por ejemplo, utiliza el chip 74HC14.El circuito de tal generador se ve así:Poco de teoría
La teoría dice que la frecuencia de tal generador es f = 1 / T = 1 / (0.8 * R * C). Para obtener la frecuencia requerida, debe seleccionar el valor nominal de uno de los elementos que especifican la frecuencia. Dado que el elemento lógico está hecho de acuerdo con la tecnología CMOS, tiene una gran impedancia de entrada, por lo tanto, se pueden usar elementos que especifican pequeñas corrientes de funcionamiento. Elegimos la capacitancia C1 de varias denominaciones comunes, por ejemplo, 0,47 μF. Luego, para obtener la frecuencia requerida (50Hz), la resistencia debe ser de aproximadamente 53 kOhm, pero no existe dicha resistencia en la serie estándar, por lo que elegimos 51 kOhm.
Se genera una señal cerca del meandro en la salida de dicho generador, por lo que debemos ajustar el circuito para que satisfaga los requisitos de la tarea. Para obtener una duración de pulso ajustable en la salida, es necesario cambiar el modo de recarga del condensador desde un nivel alto en la salida, es decir, para reducir el tiempo de recarga. Para hacer esto, agregue dos elementos más al circuito: un diodo y una resistencia variable. Cualquier diodo de conmutación de baja potencia es adecuado.Entonces el circuito tomará la siguiente forma:Parecería: todo, el problema está resuelto, pero en las posiciones extremas de la resistencia variable, el comportamiento del servo es inestable. Esto se debe al hecho de que el valor de la duración del pulso, en las posiciones extremas de la resistencia variable, no corresponde a los requeridos. Personalmente, tampoco me gusta el uso de una resistencia variable, por lo que quiero cambiar la interfaz de control agregando una nueva lista de deseos a los términos de referencia, por ejemplo, para que el ciclo de trabajo cambie según la luz. Hay una solución simple y económica para esto: aplicar un fotorresistor GL55xx (utilizado en proyectos Arduino) como elemento regulador, cuyo cambio de resistencia se encuentra en un amplio rango.Entonces comienza la diversión. No existen fórmulas de cálculo para obtener valores de resistencia que proporcionen las duraciones de pulso requeridas, por lo tanto, a nivel de intuición (experimentalmente, usando una resistencia variable), determinamos los valores de resistencia en los que se establecen los valores requeridos de duraciones de pulso. Luego cambiamos el circuito para que cuando cambie la resistencia del fotorresistor, cambie la resistencia total, estableciendo los valores requeridos de las duraciones de los pulsos.El esquema final toma la siguiente forma:Explicaciones para el bosquejo final.
El condensador C1 con un valor nominal de 0,47 μF determina el tiempo de recarga. Una resistencia R1 de 51 kΩ establece la tasa de repetición de pulso fundamental en la región de 50 Hz. La combinación de resistencias R2-R4 en total variará en el rango de 2.5 kOhm a 24 kOhm dependiendo de la iluminación. Junto con el diodo D1, estas resistencias afectarán el tiempo de recarga del condensador C1 bajo la acción de un pulso positivo en la salida del elemento lógico, determinando así su duración.Resultado
Al conectar este generador a la entrada de control del servoaccionamiento, podremos controlarlo cambiando la iluminación de la fotorresistencia. En el video puedes ver lo que salió de él:Eso sería todo, pero puedo ofrecer el desarrollo de este desarrollo. Como utilizamos solo uno de los seis elementos lógicos incluidos en la carcasa del microcircuito, podemos ensamblar otros cinco generadores y conectarlos a otros servos. Al conectar las aletas a las palancas de accionamiento de los servos, que bloquearán el flujo luminoso de los fotoresistores que controlan otros servos, puede obtener un comportamiento divertido de los servos, pero propongo realizar este experimento por mi cuenta.¡Anímate y buena suerte! Source: https://habr.com/ru/post/es400631/
All Articles