机器人论坛
直播中

万物死

8年用户 1317经验值
擅长:MEMS/传感技术
私信 关注
[资料]

分享大神的毕业设计-履带四足复合机器人

作者:PCBguy

1.项目简介

    本项目中,履足式复合机器人拥有两种行进模式:四足行进模式、履带行进模式,应对不同场景及地形时能够切换形态。四足形态下整体总共拥有8个自由度DOF,单腿各具备2个自由度DOF,足端结构融入了履带机构,各履带机构配备1个直流电机驱动。
    该机器人主控板的MCU模组为ESP32-WROVER-E,能够实现针对总线舵机+PWM舵机+直流电机的控制,同时包括其他硬件资源:六轴加速度传感器、OLED屏幕接口、RGB灯珠、蜂鸣器等。
    履带车形态在平坦或稍崎岖的地貌上能够保持较高的行进速度,降低了四足爬行的功率消耗;四足形态用于跨越障碍,灵活应对各类复杂地形环境,解决了履带结构应对高度落差较大地形难以翻越的痛点,即实现了仿生四足与履带式结构双优势结合的腿履协同。

初始草稿:



最初的构想来源——《使命召唤11:高级战争》中的“泰坦”重型坦克:




2.电控硬件功能

2.1 主控板:

2.1.1 电机驱动:

  • 6路串行总线舵机接口:PH2.0-3P,74HC126D
  • 4路直流电机驱动:TB6612FNG

2.1.2 指示器件:

  • 1颗 六轴加速度传感器:MPU6050
  • 1块 拨轮编码器:MITSUMI
  • 1颗 普普通通的 微型无源蜂鸣器:DET402-G
  • 1颗 普普通通的 发光LED:0603
  • 1处 0.96寸4针OLED屏幕接口:HDR-1*4P-F
  • 3颗 普普通通的 RGB灯珠:WS2812B-2020

2.1.3 拓展接口:

  • 2路拓展IIC接口:PH2.0-4P
  • 1路WS2812B灯珠接口:HDR-M-2.54-3P

2.2 拓展板:

  • 16路PWM舵机驱动:PCA9685


3.选型简述

3.1 电机选型:

  • 串行总线舵机选型:型号:HTS-35H,额定电压:9.0~12.6V,串行通信波特率115200,额定扭矩:35kg.cm/3.5N.m。通信需要将UART全双工转半双工,根据幻尔舵机商家提供的通信协议手册和原理图,采用74HC126D实现;




  • PWM舵机选型【经济方案】:型号:MG996R,额定扭矩:13kg.cm/1.3N.m。常见的大舵机,配合拓展板应该也没什么问题,箭头处注意供电电压。(注意供电连接,主控板与拓展板可通过铜柱连接电源








  • 直流电机选型:型号:JGA25-370-1260,额定电压:12.0V,减速比:1:103,空载转速:60转/分钟。主控V1.0版本中,采用TB6612FNG驱动【考虑到价格问题,后续打算用RZ7899/DRV8833替代】;





3.2 其他选型:

  • 六轴加速度传感器:MPU6050。通常选择,源代码中定义支持了采用DMP获取四元数后,再解算得Pitch、Roll角(yaw角太飘),而且QFN封装可能不太好焊。


  • 芯片供电:3.3V与5V供电均采用LDO实现,即SCJT1117-3.3与SCJT1117-5.0。(由于压差较大,建议贴散热片)


  • 电源选型:采用放电倍率35C的3S聚合物航模电机,但考虑到安全问题,经测试3节放电倍率10C的18650动力锂电池也能驱动

    航模电池:(危险,但带劲)



    18650动力锂电池:




4.实物图片

主控板:



16路PWM舵机---拓展板:



组合图:




5.机械结构设计

    所述机器人整体总重量(加电源)经称量可达3.0kg。
    目前大部分结构零件以FDM式3D打印技术制造,采用PLA材质,故主要参数推荐:0.15mm层高,70%填充。部分需要少量支撑零件,如履带外壳——主壳、提手、躯体前侧板等
设计特点:

  • 履带足
  • 二自由度串联腿
  • 四足形态:8自由度
  • 履行模式:4电机驱动
  • 预留二自由度云台
  • 3D打印结构




6.控制系统软件设计

VSCode+PlatformIO平台开发,目前机器人主控系统主要包括2部分:底层驱动,运动控制。


6.1 底层驱动内容:

  • 串行总线舵机通信
  • 直流电机驱动
  • 六轴加速度传感器通信
  • OLED屏幕驱动
  • 拨轮编码器读取
  • WS2812B-RGB灯珠驱动
  • 蜂鸣器驱动
  • WiFi通信配置

6.2 运动控制内容:

  • 单腿正解FK
  • 单腿逆解IK
  • 姿态逆解
  • 足端摆线轨迹计算
  • Trot步态模式
  • Walk步态模式
  • *VMC算法 -- 伪闭环(待测试)

6.3 代码文件说明:

lib:

  • Adafruit_NeoPixel: WS2812B灯珠驱动控制(有点小bug,第1个灯珠有些不受控制,待更改)
  • Adafruit_PWM_Servo_Driver_Library: PCA9685通信及驱动库
  • MPU6050:加速度传感器
  • U8g2:用于0.96寸 OLED屏幕驱动

src/Drive:

  • Hiwonde.h/.cpp: 串行总线舵机通信库
  • ServoDrive.h/.cpp: PWM舵机驱动控制库(PCA9685)
  • IOs.h/.cpp: GPIO引脚配置及控制库
  • IMU.h/.cpp: MPU6050加速度传感器通信库
  • DCMotorDrive.h/.cpp: 直流电机驱动控制库

src/Dynamics:

  • FKIK.h/.cpp: 单腿正逆解库
  • MotionControl.h/.cpp: 机器人运动及姿态控制库


7.远程控制App设计

注意:需要开启定位、通知权限
设计特点:

  • 基于Android端开发
  • 采用WIFI作为无线通讯模式
  • 采用TCP作为传输层协议



8.实物样机







(摄像头后续再用)



彩蛋:




更多回帖

发帖
×
20
完善资料,
赚取积分