地瓜机器人 · 3月21日

智能,触手可及:揭秘高灵活、高精度仿生机器手的操作与实现

本项目打造了一款高灵活、高精度、超安全的仿生机器手,让人形机器人也能轻松拿捏,实现“触手可及”的智能操作。不管是抓、搬、放,还是清扫、整理、照顾,它都能一手搞定!——南京信息工程大学-触手可及团队
一、创新点
1高度集成化 通过 ROS 模块化架构,我们实现了驱动器、传感器和控制单元的紧凑设计, 提升了系统的能源效率和便携性。ROS 的硬件抽象和中间件功能简化了组件间 的高效通信和同步。
2 多模态感知 机器手集成了触觉、视觉、力觉等多种传感器,通过 ROS 的数据融合功能, 增强了环境感知能力,提高了操作的安全性和效率。
3 高可拓展性 采用模块化设计,关键组件标准化,便于快速更换和升级。接口标准化确保 了与第三方配件和现有系统的广泛兼容性,增强了适应性和灵活性。
4 人工智能学习 利用机器学习和人工智能技术开发控制算法,机器手能够精确控制动作并 根据环境反馈自动调整,提升了自主性和学习能力,适应复杂和动态的工作环境。

二、方案论证与设计
想象一下,一只超灵活、超精准、超安全的机器手,能像人一样自如抓取物品,还能在家里挥舞“魔法”,扫地、整理、照看全搞定!下面是我们的“幕后黑科技”:

  1. 机械结构设计
    • 整体结构:
    • 我们的机器手采用了“跳绳式”驱动,用轻质绳索代替沉重电机,让动作范围更大、反应更快,简直就是给机器手装上了“超跑引擎”。通过 CAD 和运动学分析优化绳索布局,搭建了一个动态张紧系统,确保每个关节都稳如老僧入定。
    • 关节设计:
    • 模仿人手的弯曲与伸展,利用绳索和轴承组合,打造出能比拼复杂手势的“多面手”。绳索的调节性让你随心所欲地变换动作,就像在调味品中加入不同的佐料。
    • 材料与加工:
    • 选用 PLA 材料,既轻又省钱,还能 3D 打印,真是省时又省力。经过精细调参、热处理和表面涂层,每个部件都练就了一身“钢筋铁骨”,耐用又抗磨损。
  2. 电路结构设计
    • 电源管理:
    • 就像家中电闸保证每个电器稳定工作,我们的电源管理系统确保每个组件都能吃饱“电能大餐”,还自带过载保护功能,保证安全无虞。
    • 传感器电路:
    • 配备 BMP280 和 MPU6050 等传感器,分别负责测气压、温度和姿态,就像给机器手装上了超灵敏的“侦查雷达”,实时捕捉环境信息。
    • 控制电路:
    • 这里是机器手的大脑!通过 FLASH 存储器、CAN 总线和译码器电路,把各个“神经元”紧密相连,确保指令传达快、准、狠。
    • 其他电路:
    • ADC 多路复用和电流采集帮忙监控每一丝电流;串口隔离保护和 ESP12 通信模块则保证机器手既能稳稳发话,也能随时上网“晒晒朋友圈”。
  3. 软件设计
    • 底层驱动:
    • 在 STM32F4 上配置时钟、GPIO、DMA、ADC/DAC 及各种接口,就像调校一架精密跑车的每个部件,确保所有传感器和电机乖乖听话。
    • Linux 环境 & ROS:
    • 选用 Ubuntu 20.04 加持,装上 ROS Melodic 和 Rviz,这就像给机器手装上了高科技操作系统,让它不仅会“动”,还能“看”和“想”。
    • 视觉识别:
    • 通过深度学习让机器手识别各种物体和手势,简直是装了“慧眼”,既能看懂你比划的手势,还能不断自我升级,未来绝对能玩出新花样!
  4. 总体论证
    • 适应性:
    • 绳驱动设计让机器手在多自由度动作上游刃有余,无论家里是乱七八糟还是井井有条,都能灵活应对。
    • 安全性:
    • 机械和电气两手抓,内置紧急停止和过载保护,确保机器手“玩”得开心又安全。
    • 可塑性与成本效益:
    • 模块化设计让改装升级轻松搞定,同时优化成本,做到高性能低投入,真是又省钱又省心!

三、 硬件部分

image.png

需求分析
• 多板协同设计:
o 远端指骨板: 搭载两个气压传感器,用于检测压力变化。
o 中间指骨板: 集成电机驱动及反馈模块,实现运动传递与数据反馈。
o 近端指骨板: 配置激光测距传感器,辅助检测距离。
o 手掌核心板: 集成另一套电机驱动、姿态传感器及 STM32F427VGT6 主控芯片,实现整体协调控制。

  1. 原理图分析
    • 主控芯片(STM32F427VGT6):
    o 采用 32 位 Cortex-M4 内核,主频 180MHz,内置 1024KB Flash 和 256KB RAM。
    o 提供丰富的接口(SPI、I2C、USART等),负责整个机器手的控制与数据处理。
    • 电源模块:
    o 提供 12V、5V、3.3V 和 VCC_ADJ 等多路电压,配备滤波电容确保电源稳定。。
    • 译码器电路:
    o 采用 HT74HC154 系列芯片,通过 4 个 GPIO 控制 16 路输出,用于管理多个压力传感器模块。
    image.png
    image.png!
    • LED 呼吸灯电路:
    o 使用 PCA9685PWM 控制器,通过 I2C 控制多路 PWM 信号,用于根据传感器数据调节 LED 灯亮度。
    • Type-C 转串口电路:
    o 通过 CH340G 实现 Type-C 接口与串口设备的数据转换和通信。
    • 启动模式选择与复位电路:
    o 利用开关和复位按钮确定 STM32 的启动模式,并确保系统异常时能正确复位。

• Flash 电路:
o 用于存储程序代码,保证 MCU 能稳定烧录并运行固件。
• ADC 模块与多路复用:
o 利用 CD74HC4067 作为 16 通道多路复用器,将多个模拟信号路由至 AD7705 高精度 ADC,完成传感器信号数字化。

• 舵机控制与端口:
o 采用两个 PCA9685PWM 芯片控制 16 路 PWM 信号,实现对舵机的精确控制;
o 利用 TL431 芯片和电位器调节电压,确保舵机转角可调。
• BMP280 传感器电路:
o 通过 SPI 接口将 BMP280 气压传感器与 STM32F427 连接,实现高精度气压和温度采集。

  1. PCB 分析
    • 主控板设计:
    o 采用四层 PCB 结构(顶层、GND、VCC、底层),其中接地层与电源层紧密相邻,确保抗干扰性和稳定性。
    o 走线遵循先近后远、减少直角的原则,并采用差分对等长布线保证高速信号完整性。

• 指尖板设计:
o 集成两个 BMP280 芯片,结合软体硅胶的密封与支撑设计,实现对手指压力的精准检测。

四、软件设计与流程
4.1 软件层次与结构
在软件的设计方面,主要是三层结构。分别是底层驱动层、Linux 操作系统 层以及 ROS Melodic 层。通过下层为上层提供相应的接口,实现各层级的功能。
4.2 底层驱动设计
4.2.1 BMP280 驱动

BMP280 驱动程序的作用是将传感器提供的原始数据进行处理和转换,得到 实际的温度和气压值。驱动程序负责与硬件进行通信,读取和写入寄存器,控制 采样频率和滤波器的设置等。在嵌入式系统中,BMP280 驱动程序通常是通过 I2C 或 SPI 接口与微处理器交互的。通过编写适当的驱动程序,我们可以轻松地使用 BMP280 传感器获取环境温度和气压等信息。
4.2.2 空心杯电机驱动

电机驱动程序的作用是控制电机的运动,通过向电机发送电信号来实现电机 的转动,包括控制电机的转速、方向、加减速等参数。电机驱动程序通常需要根 据具体的电机类型和电机驱动器的规格进行编写,以确保电机能够按照要求进行 运动。在嵌入式系统中,电机驱动程序通常需要与硬件电路结合使用,以实现精 确的控制。常见的电机驱动程序包括步进电机驱动程序、直流电机驱动程序、伺 服电机驱动程序等。
4.3 单片机主程序设计
在本设计中,主函数负责不断检测 BMP280 的参数值,解析出指尖的运动情 况。除此之外,程序还要根据用户定义的指关节位置,检测并调节电机的转向。
4.3.1 程序框架设计
单片机主程序采用了事件驱动的架构,包括初始化、主循环、中断服务例程 等。程序框架设计考虑了实时性能和资源限制。
4.3.2 功能模块实现
功能模块实现包括了传感器数据采集、电机控制、通信协议等。我们使用了 中断驱动的数据采集方法,确保了数据的实时性和准确性。
4.3.3 调试与优化
调试与优化环节使用了多种工具和技术,如逻辑分析仪和性能分析器。程序 优化着重于减少内存占用和提高执行效率。
4.4 视觉识别系统设计
4.4.1 物体识别算法
物体识别算法采用了基于机器学习和深度学习的方法进行目标检测,并将算 法部署在 TROS 上,并根据不同的物体采取对其更有效地抓取策略。
4.4.2 手势识别算法
手势识别算法结合了图像处理技术和机器学习,能够识别不同的手势命令。 算法设计考虑了复杂环境下的识别准确性和鲁棒性

五、测试
5.1系统测试
• 硬件测试
o 对机械结构进行应力、耐久性和精度测试,验证机械手的稳定性和可靠性。
o 单片机系统测试确保硬件与软件之间的兼容性和安全性。
• 软件测试
o 将机器手集成到 ROS 框架中,通过各节点和话题实时接收、处理传感器数据,验证系统的多模态感知和控制功能。
5.2功能验证
• 机械手功能验证
o 演示基本操作(抓取、按压、特定手势如胜利造型),确认动作的精确性和响应性。
• 传感器性能验证
o 灵敏度测试: 检测压力传感器线性度,验证灵敏度大于 5 kPa/N。
o 最小力检测: 使用 1g 标准砝码测试,表明传感器的最小检测力低于 0.01 N。
• 数据采集及可视化
o 异物深度识别实验: 通过对嵌入硅胶块中不同深度异物的按压,实时记录传感器数据。
o 物体识别实验: 采集不同材质(硅胶、PLA、碳纤维)物体按压过程中的气压变化数据。
o 利用气压曲线和散点图直观展示训练集和测试集数据的分布情况。
• 机器学习与神经网络验证
o 比较 KNN、GMM 和神经网络(ResNet)在异物深度检测和物体识别中的准确率。
o 实验结果显示:异物深度检测准确率约 75%-77%,而物体识别中神经网络准确率高达约 89.8%。
o 混淆矩阵进一步展示了各算法在分类任务中的效果。
• 视觉识别验证
o 物体识别: 采用深度学习视觉算法识别目标对象,并规划相应抓取策略(如苹果、酸奶抓取示例)。
o 手势识别: 通过图像处理和机器学习技术,实现对手势命令的精准识别,从而控制机器手执行特定动作。

推荐阅读
关注数
1272
文章数
91
加速机器智能进化,促进人机和谐伴生
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息