本发明涉及机械控制,具体而言,涉及一种机械臂控制方法、系统及存储介质。
背景技术:
1、目前,通常采用手术机器人代替传统手术,大大提高了手术的准确性和安全性,比如利用腹腔镜手术机器人进行微创手术,腹腔镜手术机器人主要由控制台、手术平台以及影像台车组成。在操作过程中,控制台和手术平台建立主从关系。控制台的主手编码器收集期望的手术平台的机械臂的目标位姿,随后控制程序进行逆解运算以进行运动规划,然后向手术平台的机械臂发送各个关节的运动指令。
2、在现有技术中,由于机械臂关节控制的稳态误差难以完全消除,因此,机械臂在执行运动指令时较容易存在微小的抖动现象,若硬件稳态误差过大,则会导致机械臂出现抖动,影响整个手术机械臂的运动安全以及精准度。
技术实现思路
1、本发明解决的技术问题是提高机械臂运动安全性和精准度。
2、本发明提供一种机械臂控制方法,应用于控制机械臂的关节在目标时长内进行运动,所述目标时长包括多个运动周期,所述机械臂控制方法包括:
3、获取所述机械臂的所述关节在静止时的稳态误差;
4、判断所述稳态误差是否大于最大误差阈值;
5、若否,则将所述关节在静止时的实际位置作为所述关节在静止时的自身目标位置,并根据所述关节的最终目标位置和所述自身目标位置,得到所述关节在每个所述运动周期的固定变量;
6、根据所述关节的所述固定变量,控制所述机械臂运动;
7、若是,则根据所述稳态误差和所述关节在每个所述运动周期的所述固定变量,调整所述关节在开始运动后的预设时间段内的目标位置;
8、根据所述关节在所述预设时间段内的所述目标位置和所述关节在每个所述运动周期的所述固定变量,控制所述机械臂运动。
9、可选地,所述获取所述机械臂的所述关节在静止时的稳态误差,包括:
10、获取所述机械臂的所述关节在静止时的所述实际位置和所述机械臂的所述关在静止时的所述自身目标位置;
11、将所述实际位置与所述自身目标位置的差值,作为所述机械臂的所述关节在静止时的所述稳态误差。
12、可选地,所述根据所述关节的最终目标位置和所述自身目标位置,得到所述关节在每个所述运动周期的固定变量,包括:
13、根据所述关节的所述最终目标位置和所述关节的所述自身目标位置,得到所述关节的总位置变量;
14、根据所有所述运动周期,对所述总位置变量进行平均处理,得到每个所述运动周期的所述固定变量。
15、可选地,所述预设时间段包括多个所述运动周期;
16、所述根据所述稳态误差和所述关节在每个所述运动周期的所述固定变量,调整所述关节在开始运动后的预设时间段内的目标位置,包括:
17、根据所述稳态误差和所述关节的指令周期,得到所述关节在所述预设时间段的每个所述运动周期的稳态误差分量;
18、根据所述关节在所述预设时间段内的每个所述运动周期的所述稳态误差分量、所述关节在每个所述运动周期的周期起始位置以及所述固定变量,得到所述关节在开始运动后的所述预设时间段内的所述目标位置。
19、可选地,所述根据所述稳态误差和所述关节的指令周期,得到所述关节在所述预设时间段的每个所述运动周期的稳态误差分量,包括:
20、根据所述稳态误差和所述关节的指令周期,通过稳态误差分量计算公式,得到所述关节在所述预设时间段的每个所述运动周期的所述稳态误差分量;
21、所述稳态误差分量计算公式为:
22、
23、其中,δn为所述稳态误差分量,n为所述关节的所述指令周期,δ为所述稳态误差。
24、可选地,所述根据所述关节在所述预设时间段内的每个所述运动周期的所述稳态误差分量、所述关节在每个所述运动周期的周期起始位置以及所述固定变量,得到所述关节在开始运动后的所述预设时间段内的所述目标位置,包括:
25、根据所述稳态误差分量、所述周期起始位置以及所述固定变量,通过目标位置调节公式,得到所述关节在所述预设时间段内每个所述运动周期的所述目标位置;
26、所述目标位置调节公式为:tart+1=tart+δn+δtar;
27、其中,tart+1为所述运动周期的所述目标位置,tart为所述运动周期的所述周期起始位置,所述δtar为所述固定变量,δn为所述稳态误差分量。
28、可选地,所述根据所述关节在所述预设时间段内的所述目标位置和所述关节在每个所述运动周期的所述固定变量,控制所述机械臂运动,包括:
29、根据所述关节在所述预设时间段内的所述目标位置,控制所述机械臂在所述预设时间段的所述运动周期进行运动;
30、根据所述关节在每个所述运动周期的所述固定变量,控制所述机械臂在除所述预设时间段的所述运动周期以外的其他所述运动周期进行运动。
31、可选地,所述根据所述关节的所述固定变量,控制所述机械臂运动,包括:
32、根据所述关节的所述固定变量,得到所述关节在所述目标时长中每个所述运动周期的所述目标位置;
33、根据每个所述运动周期的所述目标位置,控制所述机械臂在所述目标时长内进行运动。
34、本发明还提供一种机械臂控制系统,应用于控制机械臂的关节在目标时长内进行运动,所述目标时长包括多个运动周期,所述机械臂控制系统包括:
35、误差计算单元,用于获取所述机械臂的所述关节在静止时的稳态误差;
36、判断单元,用于判断所述稳态误差是否大于最大误差阈值;
37、控制单元,用于若否,则将所述关节在静止时的实际位置作为所述关节在静止时的自身目标位置,并根据所述关节的最终目标位置和所述自身目标位置,得到所述关节在每个所述运动周期的固定变量;
38、根据所述关节的所述固定变量,控制所述机械臂运动;
39、若是,则根据所述稳态误差和所述关节在每个所述运动周期的所述固定变量,调整所述关节在开始运动后的预设时间段内的目标位置;
40、根据所述关节在所述预设时间段内的所述目标位置和所述关节在每个所述运动周期的所述固定变量,控制所述机械臂运动。
41、本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述所述的所述的机械臂控制方法。
42、本发明的机械臂控制方法、系统及存储介质,通过对获取到关节在静止状态下的稳态误差进行判断,当稳态误差大于或等于最大误差阈值时,需要将稳态误差加入到关节控制中,其中,需要根据稳态误差和关节在每个运动周期的固定变量,调整关节在开始运动后的预设时间段内的目标位置,使关节后续按照目标位置进行运动的同时实现对关节运动误差的补偿,从而减少机械臂出现抖动的现象。当稳态误差小于最大误差阈值时,则不需要考虑稳态误差对关节运动的影响。本发明根据稳态误差大小来选择动作规划方案,从而有效避免机械臂出现抖动现象,使关节在运动时更加灵活,且适应不同的情况,减少抖动的风险,提高机械臂运动安全性和精准度。