9 个版本
0.3.2 | 2021年11月20日 |
---|---|
0.3.1 | 2020年11月8日 |
0.3.0 | 2020年9月8日 |
0.2.4 | 2020年9月7日 |
0.1.0 | 2019年6月21日 |
#686 in 算法
41 每月下载次数
145KB
3K SLoC
ARCOS KDL
我们实现的一个非常简单的运动学和动力学库。我们在实验室使用 orocos-KDL,但发现拥有自己的库更适合我们的研究兴趣,因此我们创建了 arcos-kdl(尽可能与 orocos-kdl 相似)。
功能
- 正向位置链运动学
- 正向微分链运动学
- 逆向位置链运动学
- 逆向微分链运动学
- 正向链动力学
- 逆向链动力学
- 正向树运动学
目前 arcos-kdl 能够计算任意长运动链的正向运动学(位置和微分)。它也能够计算任意长链的逆向微分运动学。
对于逆向运动学,我们使用 orocos-kdl 命名的算法,称为加权阻尼最小二乘法。这个算法最重要的方面是可以在任务空间和关节空间定义权重矩阵。这个权重表示求解器每个(关节/轴)对解决方案的重要性。因此,在任务空间中,算法将优先减少权重较高的轴上的误差。在关节空间中,算法将减少权重较低的关节的运动。当关节接近极限或奇点时,这非常有用;可以通过降低其权重,使算法更多地使用没有问题的关节。
有关此算法的更多信息,请参阅以下论文
-
A. Ben Israel & T.N.E. Greville. 广义逆:理论与应用,第二版。Springer,2003。ISBN 0-387-00293-6。
-
K. L. Doty, C. Melchiorri & C. Boniveto. 将广义逆理论应用于机器人。国际机器人研究杂志,第 12 卷,第 1 期,第 1-19 页,1993 年 2 月。
ARCOS-KDL 支持
安装
执行
cargo install arcos-kdl
构建
如果您不想使用官方包,您可以自己构建它。确保您已经安装了 cargo
cargo build --lib
测试
执行已实现的测试
cargo test
基准测试
cargo bench -- --noplot
文档
主文档可以在 这里 找到。如果您正在寻找稳定的 API 文档,它可以在 这里 找到。
要自己生成文档,请执行以下操作:
cargo doc
格式化
如果您想测试格式,请执行以下操作(请注意,我们的持续集成脚本将检查格式,任何格式不正确的代码将被阻止合并到master分支)
rustup component add rustfmt
cargo fmt --all -- --check
许可证
本作品采用通用公共许可证,版本3.0许可。
贡献
请打开GitLab上的问题或合并请求来贡献。根据GPLv3许可证定义,您提交的代码贡献将按照上述方式许可,不附加任何额外的条款或条件。感谢。
依赖项
~4.5MB
~91K SLoC