我的方程式有问题,我尝试使用 MATLAB 和 Symbolic Toolbox 进行数值求解。我在 MATLAB 帮助的几个源页面之后,选择了一些技巧并尝试了其中的大部分,但仍然没有令人满意的结果。
q1
我的目标是用、q2
和q3
角度求解三个非多项式方程组。这些变量代表我的工业机械手中的关节角度,我想要实现的是解决这个模型的逆运动学。我的方程组如下所示:http: //imgur.com/bU6XjNP
我正在解决它
numeric::solve([z1,z2,z3], [q1=x1..x2,q2=x3..x4,q3=x5..x6], MultiSolutions)
xn
根据我的需要更改常量。然而我仍然得到一些奇怪的结果,q1
var 偏离了大约 0.1 rad,q2
偏离q3
了 ~0.01 rad。我对数值求解没有太多经验,所以我只需要信息,它应该看起来像这样吗?
如果不是,你建议我接下来应该采取什么有效的选择?也许将这个方程转换为多项式,也许使用不同的工具箱?
或者,如果尝试在 Matlab 中执行此操作,在使用 solve() 时如何限制您的解决方案?我正在考虑与 Symbolic Toolbox'sassume()
和assumeAlso
.
我会很感激你的帮助。