亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

树莓派 Pi Servo Hat 完整指南:硬件、接线与 Python 控制

简介

SparkFun Pi Servo Hat 扩展树莓派能力,通过 I²C 总线控制多达 16 路舵机。将舵机供电与通信卸载至 Hat,释放树莓派 GPIO 引脚供他用,并提供便捷的串口终端用于无头配置。

所需材料

请准备以下物品。建议使用空白 microSD 卡而非 NOOBS 卡,因 Pi Zero W 需要更新的系统镜像。



最后准备一款舵机用于测试。通用亚微型舵机是示例脚本的理想起点。


所需工具

除基本焊接用品外无需特殊设备。为获得最佳效果,建议使用 30W 烙铁和无铅焊锡。


硬件概览

Hat 设计简洁。关键组件包括:

硬件组装

建议先将公排针焊接至 Pi Zero W,再安装 Pi Servo Hat。快速技巧:

  1. 先焊接单个针脚固定排针。
  2. 趁焊锡未冷,调整板卡使针脚平整,再固定排针。
  3. 完成其余针脚焊接。

对母排针与 Pi Servo Hat 重复上述过程,确保短针从板底插入。完成焊点前保持排针水平。

组装完成后,将 Hat 堆叠在 Pi Zero W 上。参考舵机数据手册引脚定义,将舵机连接至通道 0。使用 5V 墙式适配器通过标记 PWR IN 的 USB Micro-B 接口为树莓派和 Hat 供电。

软件 – Python 控制

Hat 的 PWM 控制器为 I²C 设备,常通过 SMBus 访问。完整示例代码见产品 GitHub 仓库。

初始化 SMBus

import smbus
bus = smbus.SMBus(1)  # 树莓派 I2C 总线 1
addr = 0x40           # PWM 芯片默认 I2C 地址

配置 PWM 芯片

bus.write_byte_data(addr, 0x00, 0x20)  # 启用 PWM 模块
bus.write_byte_data(addr, 0xFE, 0x1E)  # 自动递增寄存器地址

设置通道 0 脉宽

bus.write_word_data(addr, 0x06, 0)     # 起始时间(200Hz 下始终为 0)
bus.write_word_data(addr, 0x08, 1250)  # 结束时间 → 1.5ms 脉宽

PWM 芯片运行于 200Hz(周期 5ms)。停止寄存器(0–4095)映射为 1.2µs 步进,1250 ≈ 1.5ms,为大多数舵机的中立位置。

控制其他通道时,寄存器地址每通道递增 4:

通道起始地址结束地址
00x060x08
10x0A0x0C
20x0E0x10
30x120x14
40x160x18
50x1A0x1C
60x1E0x20
70x220x24
80x260x28
90x2A0x2C
100x2E0x30
110x320x34
120x360x38
130x3A0x3C
140x3E0x40
150x420x44

每度转动约需 4.6 个寄存器计数。例如,偏离中立位 45° 需 207 计数(45 × 4.6),在 1250 基础上增减即可设定目标脉宽。

更多详细示例请访问 GitHub 仓库 查看内含 Python 脚本。

Pi Servo Hat 接线指南

制造工艺

  1. CNC 原型制作指南:精度、速度与高性价比生产
  2. FLIR Lepton 热成像模块集成指南:硬件、软件与树莓派配置
  3. 树莓派 3 入门套件完整指南:组装、系统安装与远程访问
  4. SparkFun Qwiic HAT 树莓派完整接线指南
  5. 专业 40 针树莓派 Wedge 扩展板搭建指南
  6. Simple Pi Robot:用树莓派打造 2WD 自主巡航车
  7. 掌握动力锤:现代锻造工匠的全维指南
  8. 锻造炉完全指南:原理、自制教程与主流类型深度解析
  9. 精密铸造终极指南:工艺原理、行业应用与核心优势
  10. GD&T平行度:快速参考指南
  11. 伺服压力机核心解析:动力、精度与效率的完美平衡
  12. 伺服液压机全解析:原理、优势与应用领域