Tabla de contenido:

Controlador PCA9685 de Tim: 5 pasos (con imágenes)
Controlador PCA9685 de Tim: 5 pasos (con imágenes)

Video: Controlador PCA9685 de Tim: 5 pasos (con imágenes)

Video: Controlador PCA9685 de Tim: 5 pasos (con imágenes)
Video: Manejo del PCA9685 con PIC16F88 en MikroBasic pro for PIC 2024, Noviembre
Anonim
Controlador Tim's PCA9685
Controlador Tim's PCA9685

Muchos proyectos realizados con Arduino implican el uso de un Servo.

Si usa solo uno o dos servos, estos se pueden controlar directamente desde un Arduino usando una biblioteca y asignando pines para hacer esto.

Pero para proyectos que necesitan muchos servos para ser controlados, el (démosle su nombre completo) PCA9685 Controlador LED PWM Fm + I2C-bus de 16 canales y 12 bits, puede ser la mejor opción.

El controlador de LED PCA9685, aunque está diseñado para controlar LED, se puede configurar para controlar Servo. (Ficha de datos)

El PCA9685 se comunica a través de I2C y tiene 64 direcciones posibles, esto significa que 64 de estos dispositivos se pueden conectar en cadena uno tras otro, cada uno con 16 servo o LED conectados a cada uno. Eso suma un número 1024 que se puede controlar desde un Arduino.

Ahora, teniendo un proyecto que tiene muchos servos para controlar, digamos un robot de cuatro patas. Cada pata tiene dos servos para controlarlo. (empezamos simple, en teoría mi aplicación puede controlar 1024)

Configurar ocho servos, encontrar el ajuste de ajuste para cada uno, determinar el máximo. y min. posiciones, puede llevar mucho tiempo.

Escribir y reescribir código para ver qué sucede puede ser bastante complicado.

Así que decido hacer una aplicación para simplificar las cosas y ayudar a encontrar cada configuración de Servo requerida y poder ejecutar secuencias (script) para probar los comandos enviados al servo.

Paso 1: conexiones

"loading =" perezoso"

La sección de Script es la parte divertida, aquí es donde puede crear secuencias de posiciones de Servo.

Consiga que su proyecto haga lo que usted quiere que haga.

  • El botón Agregar valor agrega la configuración actual del control deslizante.
  • El botón Agregar retraso, agrega un retraso en milisegundos establecido en el cuadro al lado del botón.
  • El botón Agregar dirección agrega un interruptor de comando a un PCA9685 diferente (cambiar la dirección en la parte superior izquierda) también se usa para cambiar el modo, el modo Servo o el modo LED.
  • El botón Ejecutar secuencia de comandos F ejecuta la secuencia de comandos actual hacia adelante.
  • El botón Ejecutar secuencia de comandos R ejecuta la secuencia de comandos actual a la inversa.
  • La casilla de verificación Bucle hace que la secuencia de comandos actual se repita una y otra vez, cuando se presiona uno de los botones Ejecutar secuencia de comandos. Para detener el bucle, desmarque la casilla de verificación.
  • El botón Clear Script, hace precisamente eso, borra todos los comandos de script.
  • El botón Cargar, carga un script previamente guardado.
  • El botón Guardar guarda el guión actual.

¡Nota!

No he escrito ningún script de verificación en la aplicación, el script debe seguir las siguientes reglas:

Una línea por comando, valores separados por un espacio.

  • El comando del servo comienza con "S" seguido de dieciséis valores, cada valor entre 0 y 600
  • El comando LED comienza con "L" seguido de dieciséis valores, cada valor entre 0 y 4095
  • El comando Dely comienza con "D" seguido de un valor, entre 0 y 10, 000
  • El comando de dirección comienza con "A" seguido de un valor y una palabra. El valor entre 0 y 64. La palabra es "Servo" o "LED".

La aplicación puede controlar el servo o el LED, no coloque el LED y el servo en la misma placa de conexión, el servo y el LED necesitan una frecuencia diferente para funcionar correctamente.

Si intenta controlar el servo con la configuración del LED, es posible que se asuste, no los dañará, pero si están instalados en un proyecto, es posible que no desee que se muevan a alguna posición.

He hecho un video de un guión simple.

Paso 5: Epílogo

A medida que avanzan las instrucciones en Instructables, la mayoría de las personas esperan terminar con un elemento físico al final de una instrucción.

Encuentro que no existe una categoría realista para el software.

Supongo que podrías clasificarlo como una herramienta, aun así, la instrucción no es cómo hacer la herramienta, es cómo usarla.

Con suerte, al tener una herramienta como esta, la gente podrá realizar mejores proyectos con Arduino utilizando Servos o matrices de LED.

Disculpe el video del proyecto en acción, estaba usando una placa de conexión ESP32-CAM con otra aplicación que hice para ver imágenes de ESP32-CAM.

EDITAR

Lo he mejorado.

Las actualizaciones se pueden encontrar aquí: Tims_PCA_9685_Controller

Recomendado: