Skip to content

Hexapod 项目复刻指南

封面

1. 项目概述

Hexapod-v2-7697是一个基于Linkit 7697开发板(本次复刻采用树莓派zero2w开发板代替)的六足机器人项目,通过手机蓝牙远程控制。本指南将详细介绍如何复刻这个项目,包括机械制作、电子组装和软件开发。

2. 所需材料

2.1 机械部分

  • PLA filament(推荐白色或黑色)
  • M2螺丝(6mm、10mm、30mm)
  • M2螺母
  • M4销钉(6mm)

2.2 电子部分

  • Linkit 7697开发板 × 1
  • PCA9685芯片(TSSOP28封装) × 2
  • mini360 DC-DC转换器 × 7
  • 2S Lipo电池(7.4V)
  • 电阻:220Ω (0805) × 18、10KΩ (0805) × 12、470Ω (0805) × 1
  • 电容:10μF (0805) × 2
  • LED(0805封装) × 1
  • 各种排针和排母
  • 舵机 TowerPro MG92B × 18

2.3 工具

  • 3D打印机(或者使用嘉立创3D打印服务)
  • 立创EDA-PCB
  • 电烙铁(带SMD焊接头)
  • 万用表
  • 螺丝刀套装
  • 剥线钳
  • 热缩管

3. 机械部分制作

3.1 3D打印

  1. 准备3D模型

    • 所有STL文件位于 mechanism/ 目录下
    • 推荐使用PrusaSlicer或Cura进行切片
  2. 打印参数设置

    • 层厚:0.2mm
    • 填充率:20-30%
    • 支撑:需要支撑(特别是腿部和关节部件)
    • 温度:PLA推荐210℃(喷嘴)/60℃(热床)
  3. 打印部件列表

    • 身体部分:body_top.stl、body_bottom.stl、body_side_wall.stl、body_back_wall.stl、body_center.stl
    • 腿部部分(每条腿6个部件,共6条腿):thigh_top.stl、thigh_bottom.stl、leg_top.stl、leg_bottom.stl、foot_top.stl、foot_bottom.stl
    • 关节部分(每条腿3个部件,共6条腿):joint_top.stl、joint_bottom.stl、joint_cross.stl
    • 其他:battery_lock.stl、tools_mount.stl

3.2 部件组装

  1. 腿部组装

    • 参考 mechanism/LEG.md 和组装视频
    • 每条腿需要:
      • 2个大腿部件(thigh_top + thigh_bottom)
      • 2个小腿部件(leg_top + leg_bottom)
      • 2个脚部部件(foot_top + foot_bottom)
      • 3个关节部件
      • 舵机 × 3
      • M2螺丝和螺母若干
  2. 身体组装

    • 将打印好的身体部件用螺丝连接
    • 安装电池锁
    • 为PCB和舵机预留安装位置
  3. 腿部与身体连接

    • 将6条腿安装到身体底部
    • 确保腿部均匀分布,前后左右对称

4. 电子部分制作

4.1 PCB制作

  1. 准备PCB文件

    • 主PCB:electronics/main.schelectronics/main.brd
    • 子PCB:electronics/sub.schelectronics/sub.brd
    • 使用Eagle 7.7软件打开和编辑
  2. 生成Gerber文件

    • 参考PCB制造商的指南生成Gerber文件
    • 推荐使用Seeed Studio、JLCPCB等PCB制造服务
  3. PCB制造注意事项

    • 主PCB × 1
    • 子PCB × 2(注意:左右两个子PCB的SJ1设置不同,右PCB的SJ1保持开放,左PCB的SJ1需要闭合)

4.2 组件焊接

  1. 焊接顺序

    • 先焊接小元件(电阻、电容、LED)
    • 然后焊接IC(PCA9685)
    • 最后焊接排针和排母
  2. SMD焊接技巧

    • 使用合适的烙铁头(细尖)
    • 焊接TSSOP28封装的PCA9685时要特别小心
    • 焊接后检查是否有短路

4.3 电路连接

  1. 主PCB与子PCB连接

    • 使用I2C总线连接主PCB和两个子PCB
    • 确保电源和地线正确连接
  2. 舵机连接

    • 每条腿的3个舵机连接到相应的子PCB
    • 注意舵机的信号线、电源线和地线连接正确
  3. 电源连接

    • 2S Lipo电池连接到主PCB
    • mini360 DC-DC转换器调整到正确的电压(5V和6V)

5. 软件部分设置

5.1 环境搭建

  1. Arduino IDE安装

    • 下载并安装Arduino IDE
    • 添加Linkit 7697开发板支持
  2. Python环境设置

    • 安装Python 3.x
    • 安装numpy:pip3 install numpy

5.2 代码编译和上传

  1. 打开项目

    • 在Arduino IDE中打开 software/hexapod7697/hexapod7697.ino
  2. 配置开发板

    • 选择开发板:Linkit 7697
    • 选择正确的端口
  3. 编译和上传

    • 编译代码,确保没有错误
    • 上传代码到Linkit 7697

5.3 路径生成

  1. 运行pathTool
    • 进入 software/pathTool/ 目录
    • 运行 python3 main.py
    • 生成的路径文件将用于机器人运动

6. 系统调试和测试

6.1 舵机校准

  1. 进入设置模式

    • 启动机器人时,快速按下用户按钮
    • 机器人将进入校准模式
  2. 使用LRemote App

    • 下载并安装LRemote App(iOS或Android)
    • 连接到机器人的BLE设备
    • 在设置界面调整每个舵机的零位和缩放比例
  3. 保存校准数据

    • 调整完成后,保存校准数据到Flash

6.2 运动测试

  1. 进入正常模式

    • 重新启动机器人,不按用户按钮
    • 机器人将进入正常模式
  2. 测试基本运动

    • 使用LRemote App控制机器人前进、后退、左转、右转
    • 测试旋转和其他复杂运动
  3. 调整参数

    • 根据需要调整运动速度和幅度
    • 确保所有腿部运动协调一致

7. 常见问题和解决方案

7.1 机械问题

  • 腿部运动不顺畅:检查关节处的螺丝是否过紧,调整松紧度
  • 部件损坏:重新打印损坏的部件,确保打印质量

7.2 电子问题

  • 舵机不响应:检查电源连接和信号线连接,确保电压正确
  • BLE连接不稳定:检查Linkit 7697的天线连接,确保电源稳定

7.3 软件问题

  • 编译错误:确保使用C++11兼容的编译器,检查库依赖
  • 运动异常:重新校准舵机,检查路径生成参数

8. 资源链接