我目前正在设计具有6自由度的机械臂,我的目标是能够给出3d位置,速度和方向($ x,y,z,\ dot {x},\ dot {y}, \ dot {z},\ theta,\ alpha,\ gamma $)。

到目前为止,我在大学中仅对SISO系统进行了反馈控制,因此,考虑了多变量控制的学习曲线,我是否应该尝试将系统建模为MIMO或多个SISO来解决这个问题?

如果可能的话,请在每种策略中提及可能的缺点和优点。

#1 楼

欢迎来到Robotics.SE!这不完全是我的专业领域,但让我给您一些指导。

控制机械手的一种非常常见的方法是,首先以“多个SISO”方法设计好的关节速度控制器。提到。然后,您将使用逆运动学在每个时间点确定理想的关节速度才能达到所需的末端执行器姿势。假设您的关节速度控制回路动力学足够快,那么您应该能够实现这些速度。机械手的运动学模型通常根据Denavit-Hartenberg参数获得。

考虑到它通常是为机器人完成的,并且可能足以满足您的目的,我建议您采用这种方法。

在一个非线性控制课程中,我看到了用于机器人操纵器的MIMO模型。我对此不是100%的确定,但是如果您不仅对运动学建模而且对动力学建模感兴趣,我想您可能希望使用它。

主要区别在于,在这种情况下,关节的位置和速度都以非线性且通常不可分离的方式影响惯性矩阵,科里奥利和离心力以及阻尼。因此,您不仅必须习惯MIMO控制,还必须研究非线性控制。

我说过,这不是我的专业领域,所以如果有人认为我说过任何胡言乱语的我都会很乐意纠正。

评论


$ \ begingroup $
很高兴看到我不是唯一的巴西人! = D
$ \ endgroup $
–user798
13年1月24日在18:52

#2 楼

一组并行SISO控制器是MIMO控制器的子集,因此MIMO至少具有同等的功能,甚至可能更强大。至于优缺点,我认为没有理由使用并行SISO,除非您可能对此感到更自在,因此可能更容易完成。

说,该系统可以通过执行器分离,在这种情况下,它可能会冒出几个SISO问题。尽管控制系统是我的专长,但我不在机器人上工作,所以我不能说是否是您遇到的问题。

正如georgebrindeiro指出的,经常做的另一件事是将问题分解为内部和外部控制循环,其中内部循环使您可以忽略许多

#3 楼

我以前从未见过在这种情况下使用MIMO,但是我可以看到SISO可能如何应用。

我见过的大多数机器人系统都是单轴电机控制器(您的多个SISO)的集合体。其中只有一个用于感测的编码器和一个用于致动的马达。因此,每个轴都是SISO,但整个机器人都是MIMO。

我研究过的某些系统在电机/旋转编码器和负载/线性编码器之间存在很大的反冲,因此实现了双反馈回路,具有一个电机控制输出,但有两个编码器。电机上的旋转编码器主要用于精确地跟踪速度,而负载上的线性编码器则用于补偿(蜗杆)齿轮的反冲并提供准确的位置信息和跟踪。

I相信对于大多数控制系统而言,这些传统控制方法是您所需要的,但是也有例外。

我只看到一种系统可能会从真正的MIMO控制系统中受益,并且是一种具有与您自己相似的特征的机器人,但是还需要控制机器人的工具点所施加的力。我们确实使用传统的多重SISO方法实现了这一点,但是它需要格外仔细的调整,而且我不相信尝试使用某种形式的计算扭矩技术会更容易。

我建议您从多种SISO方法入手,如果这种方法不能满足您所需的性能或特性,请研究更高级的方法。到那时,至少您将学到很多关于系统的运动学和动力学的信息。