System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种机械臂碰撞检测方法及系统技术方案_技高网

一种机械臂碰撞检测方法及系统技术方案

技术编号:40029710 阅读:20 留言:0更新日期:2024-01-16 18:02
本发明专利技术公开了一种机械臂碰撞检测方法及系统,属于机械臂控制技术领域,该方法基于IROS控制机械臂,实现机械臂的碰撞检测;通过实现机械臂动力学参数辨识,得到相关系数;并通过设置不同的阈值来比较实际的力矩值和计算的力矩值之间的差,从而实现不同应用场景的碰撞检测;在碰撞检测过程中,通过IROS中canRecvTopic获取当前的关节位置,速度,电流值,计算理想力矩值与实际力矩值之间的偏差,通过设置阈值大小来实现碰撞检测,并通过IROS中的canSendTopic下发目标的关节位置,速度,电流值到机械臂,执行相关操作。本发明专利技术能够实现不同应用场景的碰撞检测。

【技术实现步骤摘要】

本专利技术涉及机械臂控制,具体地说是一种机械臂碰撞检测方法及系统


技术介绍

1、机械臂碰撞检测在机械臂控制中具有重要意义。其主要目的是防止机械臂在操作过程中与环境或其他物体发生碰撞,以避免潜在的损坏、安全风险和任务失败。

2、机械臂碰撞检测的实现主要分为力矩传感器检测和电流环检测。力矩传感器是一种用于测量机械臂关节或末端执行器上施加的力和力矩的传感器。力矩传感器可以将实际的机械臂力和力矩与期望的力和力矩进行比较,从而实现精确的控制。通常来说力矩传感器价格非常昂贵,不利于大规模普及。


技术实现思路

1、本专利技术的技术任务是针对以上不足之处,提供一种机械臂碰撞检测方法及系统,基于电流环来实现机械臂的碰撞检测,且基于iros控制机械臂,实现不同应用场景的碰撞检测。

2、本专利技术解决其技术问题所采用的技术方案是:

3、一种机械臂碰撞检测方法,该方法基于iros控制机械臂,实现机械臂的碰撞检测;通过实现机械臂动力学参数辨识,得到相关系数;并通过设置不同的阈值来比较实际的力矩值和计算的力矩值之间的差,从而实现不同应用场景的碰撞检测;

4、其中,所述实现机械臂动力学参数辨识,得到相关系数;实现过程如下:

5、s1、利用牛顿-欧拉建立机械臂动力学方程;

6、s2、机械臂动力学模型参数线性化以及获取最小参数集;

7、s3、机械臂激励轨迹的优化;

8、s4、基于最小二乘法进行参数辨识,得到相关系数;</p>

9、在碰撞检测过程中,通过iros中canrecvtopic获取当前的关节位置,速度,电流值,计算理想力矩值与实际力矩值之间的偏差,通过设置阈值大小来实现碰撞检测,并通过iros中的cansendtopic下发目标的关节位置,速度,电流值到机械臂,执行相关操作。

10、优选的,所述基于iros控制机械臂,基于iros环境,运行cansendmechanicalarm和应用节点,cansendmechanicalarm节点负责从canrecvtopic中获取机械臂控制消息,并通过can协议按照相关设置发送到机械臂上控制机械臂运行;

11、应用节点负责将机械臂控制消息发送到cansendtopic中,并通过libmacp.so动态库和共享内存方式与cansendmechanicalarm节点进行通信。

12、其中所述的cansendmechanicalarm节点由iros提供,应用节点是应用开发者开发的节点。

13、进一步的,所述应用节点与cansendmechanicalarm节点进行通信,包括启动、停止、设置cansendmechanicalarm节点消息发送间隔、读取最近的一条缓存消息。

14、优选的,所述机械臂动力学方程如式(1):

15、

16、进行机械臂动力学模型参数线性化如式(2):

17、

18、其中表示机械臂动力学参数回归矩阵,x表示机械臂动力学参数集,对应于单个连杆来说,用13个参数来表示:xi=[mi,iixx,iiyy,iizz,iixy,iixz,iiyz,mipix,mipiy,mipiz,fs,fv,jm]

19、其中mi表示连杆质量,iixx,iiyy,iizz,iixy,iixz,iiyz表示连杆惯量,pix,piy,piz表示质心位置,fs表示库伦摩擦系数,fv表示粘滞摩擦系数,jm表示电机惯量;

20、通过求解参数回归矩阵的秩来求动力学最小参数集。

21、优选的,所述机械臂碰撞检测阈值设置,如式(3):

22、|τtarget-τactual|=τthres hold    (3)

23、τtar get是指的通过动力学参数辨识得到的理论目标的力矩值,

24、τactual是指通过检测电流,再通过电流转换成力矩值,

25、τthres hold代表阈值的大小。

26、优选的,所述通过电流转换成力矩值,电机的电流与力矩之间的关系可以近似的认为成正比,如公式(4)所示:

27、τ=k*i  (4)

28、τ代表电机的力矩(或扭矩),通常以牛顿·米(n·m)或牛顿·米(n·cm)等单位表示;i代表电机的电流,通常以安培(a)表示;k是一个常数,通常被称为电机的扭矩常数,也叫做电机的电流-力矩常数,由电机模组厂商给出。

29、优选的,根据不同的场景设置不同的阈值灵敏度:τthreshold_1,τthreshold_2,τthreshold_3,

30、τthreshold_1,用于碰撞检测灵敏度很高场景,包括碰撞豆腐,纸张;

31、τthreshold_2,用于碰撞检测灵敏度适中场景,包括人操作机械臂去做相关操作;

32、τthreshold_3,用于碰撞检测灵敏度不高场景,包括在没有人进行交互的场景。

33、本专利技术还要求保护一种机械臂碰撞检测系统,该系统基于iros控制机械臂,实现机械臂的碰撞检测;

34、在碰撞检测过程中,通过iros中canrecvtopic获取当前的关节位置,速度,电流值,计算理想力矩值与实际力矩值之间的偏差,通过设置阈值大小来实现碰撞检测,并通过iros中的cansendtopic下发目标的关节位置,速度,电流值到机械臂,执行相关操作;

35、该系统具体通过上述的机械臂碰撞检测方法实现机械臂碰撞检测。

36、本专利技术还要求保护一种机械臂碰撞检测装置,包括:至少一个存储器和至少一个处理器;

37、所述至少一个存储器,用于存储机器可读程序;

38、所述至少一个处理器,用于调用所述机器可读程序,实现上述的方法。

39、本专利技术还要求保护一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,实现上述的方法。

40、本专利技术的一种机械臂碰撞检测方法及系统与现有技术相比,具有以下有益效果:

41、本方法基于iros控制机械臂,来实现机械臂的碰撞检测功能,首先进行动力学参数辨识,其次设置碰撞阈值。iros(intelligent robot operating system)是公司团队开发的一种智能机器人操作系统,对标业内广泛使用的开源机器人操作系统ros(robotoperating system),针对ros应用中实时性较差,不稳定、缺乏安全性等难以商用的缺点,采用完全自研方式,在提高安全性、可靠性的同时,性能较ros提高100倍以上,全面国产化替代ros。为满足一些机器人实时性更高的要求,基于开源linux内核进行实时性改造,开发实时操作系统rlinux,并与iros融合,使iros的平均实时性可达0.1毫秒。

42、同时基于电流环来实现机械臂的碰撞检测,电流环控制是通本文档来自技高网...

【技术保护点】

1.一种机械臂碰撞检测方法,其特征在于,该方法基于IROS控制机械臂,实现机械臂的碰撞检测;通过实现机械臂动力学参数辨识,得到相关系数;并通过设置不同的阈值来比较实际的力矩值和计算的力矩值之间的差,从而实现不同应用场景的碰撞检测;

2.根据权利要求1所述的一种机械臂碰撞检测方法,其特征在于,所述基于IROS控制机械臂,基于IROS环境,运行canSendMechanicalArm和应用节点,canSendMechanicalArm节点负责从canRecvTopic中获取机械臂控制消息,并通过can协议按照相关设置发送到机械臂上控制机械臂运行;

3.根据权利要求2所述的一种机械臂碰撞检测方法,其特征在于,所述应用节点与canSendMechanicalArm节点进行通信,包括启动、停止、设置canSendMechanicalArm节点消息发送间隔、读取最近的一条缓存消息。

4.根据权利要求1所述的一种机械臂碰撞检测方法,其特征在于,所述机械臂动力学方程如式(1):

5.根据权利要求1所述的一种机械臂碰撞检测方法,其特征在于,所述机械臂碰撞检测阈值设置,如式(3):

6.根据权利要求5所述的一种机械臂碰撞检测方法,其特征在于,所述通过电流转换成力矩值,电机的电流与力矩之间的关系如公式(4)所示:

7.根据权利要求5或6所述的一种机械臂碰撞检测方法,其特征在于,

8.一种机械臂碰撞检测系统,其特征在于,该系统基于IROS控制机械臂,实现机械臂的碰撞检测;

9.一种机械臂碰撞检测装置,其特征在于,包括:至少一个存储器和至少一个处理器;

10.一种计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,实现权利要求1至7任一项所述的方法。

...

【技术特征摘要】

1.一种机械臂碰撞检测方法,其特征在于,该方法基于iros控制机械臂,实现机械臂的碰撞检测;通过实现机械臂动力学参数辨识,得到相关系数;并通过设置不同的阈值来比较实际的力矩值和计算的力矩值之间的差,从而实现不同应用场景的碰撞检测;

2.根据权利要求1所述的一种机械臂碰撞检测方法,其特征在于,所述基于iros控制机械臂,基于iros环境,运行cansendmechanicalarm和应用节点,cansendmechanicalarm节点负责从canrecvtopic中获取机械臂控制消息,并通过can协议按照相关设置发送到机械臂上控制机械臂运行;

3.根据权利要求2所述的一种机械臂碰撞检测方法,其特征在于,所述应用节点与cansendmechanicalarm节点进行通信,包括启动、停止、设置cansendmechanicalarm节点消息发送间隔、读取最近的一条缓存消息...

【专利技术属性】
技术研发人员:谭雯赵洪宇刘鹏李朝铭刘来波
申请(专利权)人:山东新一代信息产业技术研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1