El servo no gira a la posición mínima absoluta

0

Hice un poco de Googlin 'pero no pude encontrar nada sobre esto.

Mi hexápodo usa servos analógicos ( estos ) para mover las piernas alrededor.

Tengo la línea de control conectada a un servocontrol (que a su vez está controlado por las líneas I2C de la placa STM32 Discovery).

La línea eléctrica está conectada a una salida de un circuito regulador de voltaje capaz de proporcionar 11A de corriente; cada uno de estos circuitos reguladores se conecta a 9 servos, hay disipadores de calor en el LM317 y el par Darlington.

El suelo naturalmente ... va al suelo.

De todos modos, los servos se mueven, pero por alguna razón no alcanzan el mínimo que puedo lograr al girarlo con la mano. Estoy tratando de averiguar si soy un idiota o qué.

El ancho de pulso que aceptan los servos oscila entre 0,5 ms para el mínimo y ~ 3 ms para el máximo. Esto constituye alrededor de una rotación de 160 grados.

Cuando configuro el ancho de pulso a 0.5 ms, se mueve a una posición y se detiene. No se moverá si reduzco el ancho del pulso más (de modo que 0,4 ms no lo moverán). Sin embargo, la posición que alcanza para PW = 0.5 ms no es la mínima ni la máxima, todavía hay bastante espacio para moverse (creo que alrededor de 15 grados). Puedo moverlo más lejos cuando apago la alimentación.

¿Hay alguna manera de hacer que se mueva allí? Ensamblé todo el robot mientras consideraba que se movería a los extremos, pero como no lo hace, el hexápodo no puede levantar sus pies tan alto como quería, por ejemplo.

    
pregunta Mewa

2 respuestas

1

La rotación mecánica generalmente excederá la rotación eléctrica; hay puntos muertos al final del recorrido del potenciómetro de retroalimentación, y generalmente usted desea detener el motor (eléctricamente) antes de que toque los topes mecánicos.

Existen servos de ángulo ultra-ancho que tienen un ángulo controlado de 180 ° o más, pero no son tan comunes / baratos como los tipos nominales típicos de 90 °.

    
respondido por el Spehro Pefhany
1

Los servocontroladores estándar suponen 1500 us para el centro y + -500-ish para los extremos (recorrido completo entre 1-2 ms). Si su servo necesita 300 - 3000 de nosotros para un viaje completo, debe asegurarse de que el controlador que está usando pueda proporcionarlo.

    
respondido por el Oleg Mazurov

Lea otras preguntas en las etiquetas