首页
学习
活动
专区
圈层
工具
发布

当机械臂"开口说话":三类开源智能机械臂方案的技术路径解析

在嵌入式智能系统与机器人技术加速融合的背景下,基于开源硬件平台的机械臂应用正逐步从实验室走向多元化的真实场景。以下将展示EEWorld论坛网友的三项代表性作品——“可对话的且可机械臂运动的小助手”“桌面上的智能机械臂助手”与“智能机械臂”——从不同层面呈现该领域的技术路径与创新思路。

这些方案覆盖从语音驱动到综合视觉操控的多层次技术体系:基于ESP32与ATmega 328PB实现语音交互式双舵机控制;采用FRDM-MCXN947与树莓派5构建“控制-监视分离”架构;以及依托FRDM-RW612,集成蓝牙远程控制、语音识别与视觉分拣,形成移动式综合抓取系统。

三者的共同特征是:以微控制器或开发板为执行核心,树莓派等单板计算机承担计算与通信中枢,通过PWM或总线协议驱动舵机,扩展语音交互、无线通信与视觉感知能力。这些实践不仅验证了从原型到应用的可行性,也为教育辅助、医疗手术、家庭服务和工业分拣等落地场景提供了可参考的技术方案。

可对话且可机械臂运动的小助手

作者:sgf201

一、作品简介

使用物品清单:

1、ESP32 box

2、Atmega 328PB

3、双舵机机械臂

机械臂在小助手中的应用案例展现出了巨大的潜力和价值。以医疗领域为例,某知名医院引入了配备智能对话系统和机械臂的小助手。在手术辅助场景中,机械臂能够根据医生通过智能对话系统下达的指令,精确地执行切割、缝合等操作,大大提高了手术的精准度和效率。据统计,使用该小助手后,手术的平均时长缩短了 20%,术后并发症的发生率降低了 15%。这一案例充分体现了机械臂与智能对话系统协同工作在医疗领域的显著优势。正如乔布斯所说:“活着就是为了改变世界。”这种创新的应用无疑是对医疗领域的一次变革。

在教育领域,也有许多成功的应用案例。某学校采用了带有机械臂的智能小助手辅助教学。在实验课程中,小助手可以通过智能对话与学生互动,根据学生的需求,利用机械臂准确地抓取和操作实验器材,帮助学生完成实验。通过对学生学习效果的跟踪调查发现,使用小助手的班级学生在实验操作技能方面的平均成绩比未使用的班级高出 10 分。这表明机械臂与智能对话系统的结合能够为教育教学带来新的活力和提升。从 SWOT 分析模型来看,这种应用的优势在于提高教学效率和学生的参与度,劣势可能在于设备成本较高;机会是随着技术发展成本会逐渐降低,威胁则是可能面临技术更新换代快的问题。

在家庭生活场景中,机械臂小助手同样发挥着重要作用。例如,一款智能家居小助手,它可以通过智能对话了解主人的需求,然后利用机械臂完成诸如开关电器、取放物品等任务。有用户反馈,自从使用了这款小助手,生活变得更加便捷,每天可以节省出大约 30 分钟的时间用于休息或娱乐。这一案例说明机械臂与智能对话系统的协同应用能够切实改善人们的生活质量,让家庭生活更加智能化、舒适化。这些丰富的应用案例都充分证明了机械臂在小助手中的应用是推动未来小助手革命的重要力量。

二、系统框图

三、各部分功能说明

ESP32 box是智能助手的主体,可以与用户实现语音沟通,Atmega 328PB与智能助手通信,通过两路pwm信号来控制机械臂的舵机,实现动作控制,定制特定关键词触发智能助手向328PB发送控制指令,机械臂完成制定动作。

四、项目总结

从头开始完成了一次语音助手到控制硬件的开发,感觉现在设备的潜力无穷,很多软件硬件的配套十分完善,很快就可以实现自己的想法,目前定制的动作还不很丰富,后续有时间会在这个组合上实现更多的动作。

桌面上的智能机械臂助手

作者:F机器人3

一、作品照片

二、作品功能介绍

本作品为基于树莓派5与FRDM-MCXN947的机械臂系统,核心功能为:FRDM-MCXN947输出3路50Hz PWM信号驱动180°舵机,实现机械臂运动控制;树莓派5仅负责监视,通过GPIO读取N947心跳信号,超时未检测到心跳时,拉低复位引脚重启N947,保障系统稳定运行。

三、物料清单及简介

树莓派5:负责系统监视与复位控制,提供GPIO接口实现心跳检测与复位信号输出。

FRDM-MCXN947开发板:NXP旗下微控制器板,核心为MCXN947芯片,输出3路PWM驱动舵机,同时通过GPIO发送心跳信号。

180°舵机机械臂:接收PWM信号实现角度转动,分别控制机械臂X、Y、Z三轴运动。

杜邦线若干:用于各模块间信号及电源连接。

电源:为所有设备供电。

四、系统框图

设计思路

系统采用“控制+监视”分离架构:FRDM-MCXN947专注于舵机PWM驱动核心功能,树莓派5仅承担监视与故障恢复角色,减少核心控制模块负担,提升系统稳定性。

系统软硬件介绍及实现框图

硬件层

FRDM-MCXN947:PWM输出引脚舵机信号线;GPIO心跳引脚树莓派GPIO输入;GPIO复位引脚树莓派GPIO输出

树莓派5:GPIO输入N947心跳引脚;GPIO输出N947复位引脚

3个180°舵机:信号线N947 PWM引脚;VCC5V电源;GND共地

软件层

N947:初始化PWM与GPIO,循环输出舵机控制信号、发送心跳,检测复位信号并执行重启。

树莓派:初始化GPIO,循环检测心跳信号,超时触发复位操作。

五、各部分功能说明

FRDM-MCXN947模块

PWM驱动功能:初始化PWM模块为50Hz频率(舵机标准驱动频率),将0-180°角度转换为对应占空比,输出3路PWM分别控制3个舵机,实现机械臂三轴角度调节。

心跳发送功能:通过GPIO引脚每500ms翻转一次电平,向树莓派发送“正常工作”信号,电平翻转频率可通过代码中计数参数调整。

复位检测功能:实时读取复位引脚电平,若树莓派拉低该引脚(低电平),立即重启芯片,恢复正常控制逻辑。

树莓派5模块

心跳监视功能:通过GPIO输入引脚实时读取N947心跳信号,若检测到电平翻转(心跳正常),更新最近心跳时间戳;若超过时间未检测到翻转,判定N947异常。

复位控制功能:判定N947异常后,拉低复位引脚1秒(确保N947触发复位),随后恢复高电平,等待N947重启完成,重启后重新开始心跳监视。

舵机与机械臂执行模块

接收N947输出的PWM信号,将占空比对应转换为0-180°机械转动,每个舵机负责一个轴的运动,三者协同实现机械臂取放、定位等动作。

六、项目总结

本项目实现了基于FRDM-MCXN947与树莓派5的机械臂系统,核心亮点为“控制与监视分离”设计:N947专注于PWM舵机驱动,确保控制实时性;树莓派仅负责故障监测与恢复,降低核心模块复杂度。项目过程中解决了舵机供电不足、心跳信号误判、复位时序匹配等问题,最终实现机械臂稳定运动与异常自动重启功能。

智能机械臂

作者:传媒学子

一、作品简介

《智能机械臂》项目实现的功能是:基础功能:实现声音控制机械臂。挑战功能:树莓派远程控制机械臂,通过蓝牙,驱动机械臂完成一些动作,实现精准远程控制。使用的主要器件有:FRDM-RW612,树莓派5,语音识别模块,5V/5A电源转换器,小车底盘和总线舵机机械臂以及驱动板。所需要的硬件购买清单,请参考第七章节其它中的器件购买网址。

项目最终实现了通过语音和远程两种形式控制智能机械臂和底盘。可实现底盘的移动和机械臂的动作,也可借助树莓派摄像头实现对待抓取物体的颜色识别以及抓取。项目可用于特殊场景下的探测与样品抓取,也可用于特定模式下的物品分拣等领域。

图1 作品图

二、系统框图

设计思路:远程控制主要利用RW612的BLE功能和串口功能,连接HMI(人机交互接口)串口显示屏,实现从HMI显示屏远程控制智能机械臂(小车和总线舵机机械臂)。将树莓派作为蓝牙的主设备,智能机械臂和RW612作为从设备。语音模块通过设定唤醒词和命令,通过树莓派的串口将解析到的语音指令传输给树莓派。树莓派接收来自语音模块和远端RW612发送来的指令,将指令解析后转换为小车和机械臂移动的指令,同时树莓派驱动摄像头,判断抓取物体的颜色,并根据指令,按照逆运动学解析,移动到具体的(X,Y,Z)坐标。

图2.1 系统硬件框图

系统软硬件介绍:FRDM-RW612开发板,运行FreeRTOS,主要使用了串口和BLE模块,连接串口屏。树莓派5运行raspi bookworm OS,通过串口/dev/ttyAMA0, 连接语音识别模块;由于树莓派的启动电流比较大,观官方要求配备5V/5A电源转换器才能正常启动。另外就是,小车底盘和总线舵机机械臂以及驱动板,运行的是baremetal程序。

三、各部分功能说明

下面通过图2.3/4/5来介绍三个重要模块的程序实现思路。图2.2描述了RW612程序流程图,借助官方SDK wireless uart demo可以进行快速开发,demo的uart是flexcom3, 修改为flexcom1 or 0, 便于连接HMI串口屏。程序分为2个固件,一个蓝牙固件(官方提供),需要提前烧录,一个程序固件。

图2.2 FRDM-RW612程序流程图

图2.3 树莓派5程序示意图

如图2.3所示,树莓派5通过编写python程序,实时处理从串口和蓝牙发来的数据。数据接口采用异步触发,避免出现异常,当接收到抓取蓝色和红色的指令时,会调用CSI摄像头,抓取一定时间的图片,取平均值,来确保识别精度。树莓派5会按照驱动命令的格式,以及预定义的命令解析方法,进行命令解析和命令下发。

图2.4 机械臂驱动板程序流程图

机械臂整体程序流程如图2.4所示,机械臂驱动板可接收的几种命令如下:

小车指令:$QJ!..

舵机控制指令:#IndexPpwmTtime!..

逆运动学命令:$KMS: x,y,z,T!..

系统运行后,树莓派上的linux OS可以自动运行智能机械臂程序,并记录相应的日志,通过以下命令可以查看:

逆运动学算法实质是通过数学建模计算,结合实际机械臂的构造和参数,让空间坐标转换为机械臂的舵机指令,比如6自由度,就是6个舵机的具体角度。 正运动学算法,就是通过目前机械臂的6个舵机角度,计算出当前抓取终端的空间坐标(x,y,z)。本项目使用的逆运动学算法是厂商提供的,从使用上看,还是略有一些不足,可能受限于机械臂本身的构造。网上志辉君手搓的机械臂,算法实施上会更丝滑。本项目由于时间较短,成本预算已经超标的情况下,采用的总线舵机的机械臂。步进电机组成的机械臂,结构会更简单,动作可解空间会更大。

本项目在抓取红色和蓝色物体的过程中,使用了逆运动学算法。蓝色和红色的位置分为在左右对称的位置,物品放置的位置在(0,150,Z)的位置(由于算法的限制实际上(0,150,Z)和(150,0, Z)的位置是一样的,可能是算法bug),根据物品的大小,调节爪子的开合大小和Z的高度。识别到别的颜色,是不会进行抓取的,而且日志里面均有记录,可实时查取。

本项目的难度在于整合多个系统,组成智能机械臂。NXP FRDM-RW612 蓝牙SDK的学习,以及树莓派5调用摄像头,并且同时接收语音模块传输来的串口数据,实施解析难度较大。项目实施的过程中借助了github大模型的帮助,加速了项目的开发进程,但AI无法替代人类,细节性的代码编写还需要开发者自己进行。由于新的软件栈和新的树莓派引入,带来了较大的学习成本。通过对问题的逐个攻克,个人对相关概念的认知得到了较大的提升。

四、项目总结

本项目完成预定的通过语音识别控制机械臂,和通过蓝牙远程无线控制机械臂。不仅如此,本项目增加了轮足底盘,让机械臂可以移动起来。并实现了颜色分拣等功能。项目可用于一些特殊场景下的货物分拣以及危险物品的抓取。本项目由于时间的限制,只实现了预定的功能,后续也可以增加3D摄像头,实现准确的空间移动和抓取,也可以拓展wifi模块和摄像头模块,远离提通过wifi进行远程值守。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/ODZitN5Hg9G2Ygx6kYjJ53oA0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。
领券