Guía Completa del Pi Servo Hat: Hardware, Cableado y Control con Python
Introducción
El SparkFun Pi Servo Hat amplía las capacidades de una Raspberry Pi, permitiéndote controlar hasta 16 servos de modelismo mediante un bus I²C. Al descargar la alimentación y comunicación de los servos al Hat, liberas los pines GPIO de la Pi para otros proyectos y ganas una consola serie conveniente para configuración sin monitor.
Materiales Requeridos
Para seguir esta guía, reúne los siguientes elementos. Recomendamos una tarjeta microSD en blanco en lugar de una con NOOBS, ya que se requieren imágenes de SO más recientes para soporte de Pi Zero W.
- Headers Desmontables – Rectos
- Fuente de Alimentación de Pared – 5,1V DC 2,5A (USB Micro-B)
- Tarjeta microSD con Adaptador – 16GB (Clase 10)
- Header GPIO Alto para Raspberry Pi – 2×20
- Raspberry Pi Zero W
- SparkFun Pi Servo HAT
- Servo de modelismo para pruebas (un servo sub-micro genérico es buen punto de partida)
Herramientas Requeridas
No se necesita equipo especial más allá de suministros básicos de soldadura. Para mejores resultados, usa un soldador de 30W y estaño sin plomo.
Visión General del Hardware
El Hat es intencionalmente simple. Componentes clave incluyen:
- Conector USB Micro-B —Suministra 5V a los servos y también puede alimentar la Pi. Además proporciona una consola serie que permite configurar la Pi sin monitor.
- Jumper de Aislamiento de Alimentación —Cerrado por defecto, conecta el rail de servos al rail de 5V de la Pi. Ábrelo cuando uses múltiples servos de alta corriente para evitar que el ruido reinicie la Pi.
- Headers de Servo —16 pines espaciados 0,1 pulgadas, pre-dispuestos para conectores estándar de servos de modelismo.
Montaje del Hardware
Recomendamos soldar primero los headers macho en la Pi Zero W, luego colocar el Pi Servo Hat. Técnica rápida:
- Suela un solo pin a la placa.
- Mientras el estaño está caliente, inclina la placa para que el pin quede plano, luego fija el header en su lugar.
- Termina de soldar los pines restantes.
Repite el proceso con el header hembra y el Pi Servo Hat, asegurando que los pines cortos se inserten desde la parte inferior de la placa. Mantén los headers nivelados antes de completar las uniones de soldadura.
Una vez montado, apila el Hat sobre la Pi Zero W. Conecta un servo de modelismo al canal 0, consultando el datasheet del servo para el pinout. Usa un adaptador de pared de 5V para alimentar la Pi y el Hat mediante el conector USB Micro-B etiquetado PWR IN.
Software – Python
El controlador PWM del Hat es un dispositivo I²C, comúnmente accedido como SMBus. El código de ejemplo completo está disponible en el repositorio de GitHub del producto.
Inicializar SMBus
import smbus bus = smbus.SMBus(1) # I2C bus 1 en Raspberry Pi addr = 0x40 # Dirección I2C por defecto del chip PWM
Configurar el Chip PWM
bus.write_byte_data(addr, 0x00, 0x20) # Habilitar módulo PWM bus.write_byte_data(addr, 0xFE, 0x1E) # Auto-incremento de direcciones de registro
Establecer Ancho de Pulso para Canal 0
bus.write_word_data(addr, 0x06, 0) # Tiempo de inicio (siempre 0 para 200 Hz) bus.write_word_data(addr, 0x08, 1250) # Tiempo de fin → pulso de 1,5 ms
El chip PWM funciona a 200 Hz (período de 5 ms). El registro de parada (0-4095) mapea a pasos de 1,2 µs, así que 1250 ≈ 1,5 ms, la posición neutra para la mayoría de servos.
Para direccionar otros canales, suma 4 a las direcciones de registro:
| Canal | Inicio Addr | Fin Addr |
|---|---|---|
| 0 | 0x06 | 0x08 |
| 1 | 0x0A | 0x0C |
| 2 | 0x0E | 0x10 |
| 3 | 0x12 | 0x14 |
| 4 | 0x16 | 0x18 |
| 5 | 0x1A | 0x1C |
| 6 | 0x1E | 0x20 |
| 7 | 0x22 | 0x24 |
| 8 | 0x26 | 0x28 |
| 9 | 0x2A | 0x2C |
| 10 | 0x2E | 0x30 |
| 11 | 0x32 | 0x34 |
| 12 | 0x36 | 0x38 |
| 13 | 0x3A | 0x3C |
| 14 | 0x3E | 0x40 |
| 15 | 0x42 | 0x44 |
Cada grado de movimiento requiere 4,6 cuentas de registro. Por ejemplo, un offset de 45° desde neutro son 207 cuentas (45 × 4,6), sumadas o restadas a 1250 para establecer el ancho de pulso deseado.
Para ejemplos más detallados, visita el repositorio de GitHub y explora los scripts de Python incluidos.
Guía de Conexión del Pi Servo Hat
Proceso de manufactura
- Guía de Prototipado CNC: Precisión, Velocidad y Producción Rentable
- Guía de integración FLIR Lepton: Hardware, software y configuración en Raspberry Pi
- Guía de Configuración del Kit de Inicio Raspberry Pi 3: Montaje, SO y Acceso Remoto
- SparkFun Qwiic HAT para Raspberry Pi – Guía Completa de Conexión
- Guía de Configuración del Wedge Profesional de 40 Pines para Raspberry Pi
- Simple Pi Robot: Construye un Rover Autónomo 2‑WD con Raspberry Pi
- Dominando los martillos neumáticos: guía completa para la herrería moderna
- Dominar las Forjas de Herrero: Guía Completa
- La Guía Definitiva de Fundición de Precisión: Técnicas y Aplicaciones
- Paralelismo en GD&T: Guía de referencia rápida
- Fundamentos de la Prensa Servo: Potencia, Precisión y Eficiencia Explicadas