Kindr - Kinematics and Dynamics for Robotics
=============================================
**Authors: Christian Gehring, C. Dario Bellicoso, Michael Bloesch, Remo Diethelm, Peter Fankhauser, Paul Furgale, Michael Neunert, Hannes Sommer<br />
Maintainer: Remo Diethelm, rdiethelm@anybotics.com<br />
Affiliation: [ANYbotics](https://www.anybotics.com/)**
This projected was initially developed at ETH Zurich (Autonomous Systems Lab & Robotic Systems Lab).
This work is conducted as part of [ANYmal Research](https://www.anymal-research.org/), a community to advance legged robotics.
The source code is released under a [BSD 3-Clause license](LICENSE).
## Documentation
[Online](https://opensource.docs.anymal.com/doxygen/kindr/master/index.html)
Impatient individuals can directly download the [cheat sheet](https://opensource.docs.anymal.com/doxygen/kindr/master/cheatsheet_latest.pdf).
See also section 'Building the documentation' below.
## Changelog
### Kindr 1.0.0
* Simplified header include `#include <kindr/Core>` is provided.
* Kindr is now strongly dependent on Eigen.
* All sub namespaces have been removed. (e.g. `kindr::rotations::eigen_impl` -> `kindr::`)
* The implementations of rotations and time derivatives have been simplified (Passive, Hamiltonian).
- Active typedefs (e.g. RotationQuaternionAD) have been removed and simpler ones (e.g. RotationQuaternionD) have been introduced.
- Note that the functionality of some operators changed! Please check the [cheat sheet](https://opensource.docs.anymal.com/doxygen/kindr/master/cheatsheet_latest.pdf) to understand what is implemented.
- Some hints on what needs to be changed from kindr 0.0.1:
- `rotation.setFromVectors(v1, v2)` -> `rotation.setFromVectors(v2, v1)`
- `C_BI.boxPlus(dt * B_w_IB)` -> `C_BI.boxPlus(dt * C_IB * B_w_IB)`
- `C_BI.boxMinus(dt * B_w_IB)` -> `-C_BI.boxMinus(dt * B_w_IB)`
- Euler angles probably have to be negated.
* Conversion methods between ROS and kindr have been moved to the package [kindr_ros](https://github.com/anybotics/kindr_ros).
* Concatenation of Homogeneous Transformation is now implemented.
* Short typedefs are provided for Homogeneous Transformation: `HomTransformQuatD`, `HomTransformMatrixD`.
* Jacobian of exponential map is implemented.
* Unit tests based on gtest are provided to test the convention of other software packages.
- Gazebo (gazebo::math::Quaternion) uses the same convention as kindr.
- ROS TF (tf::Quaternion and tf::Matrix3x3) uses the same convention as kindr.
- RBDL's RigidBodyDynamics::Math::SpatialTransform uses the same convention as kindr, whereas RBDL's RigidBodyDynamics::Math::Quaternion concatenates differently and its conversion to a rotation matrix is inverted.
## Requirements
* [Eigen 3.2.0](http://eigen.tuxfamily.org) (Older versions might also work)
* GCC 4.7 is required at the minimum.
* CMake 2.8.3 is required at the minimum.
## Building
### Building with cmake
Install the library with [CMake](www.cmake.org):
```bash
mkdir build
cd build
cmake .. -DUSE_CMAKE=true
sudo make install
```
Note that `USE_CMAKE` defaults to `true` if catkin is not installed.
Uninstall the library with:
```bash
cd build
sudo make uninstall
```
Kindr can be included in your cmake project.
Add the following to your *CmakeLists.txt*:
```
find_package(kindr)
include_directories(${kindr_INCLUDE_DIRS})
```
### Building with catkin
Build kindr with [catkin](wiki.ros.org/catkin):
```bash
cd ~/catkin_ws/src
git clone git@github.com:anybotics/kindr.git
catkin_make_isolated -C ~/catkin_ws
```
or with [catkin command line tools](http://catkin-tools.readthedocs.org):
```bash
cd ~/catkin_ws/src
git clone git@github.com:anybotics/kindr.git
catkin build -w ~/catkin_ws kindr
```
Kindr can be included in your catkin project with:
Add the following to your *CMakeLists.txt*:
```
find_package(catkin COMPONENTS kindr)
include_directories(${catkin_INCLUDE_DIRS})
```
And to your *package.xml*:
```xml
<package>
<build_depend>kindr</build_depend>
</package>
```
### Building the documentation
Build the documentation with [Doxygen](https://www.doxygen.nl/):
```bash
mkdir build
cd build
cmake ..
make kindr_doc
```
The doxygen documentation can be found here:
```
build/doc/html/index.html
```
### Building unit tests with gtest
[GTests](https://code.google.com/p/googletest/) are only built if the folder *gtest* exists in the root folder.
Download and use GTest:
```bash
wget https://github.com/google/googletest/archive/release-1.7.0.zip
unzip release-1.7.0.zip
ln -s googletest-release-1.7.0 gtest
mkdir build
cd build
cmake .. -DUSE_CMAKE=true -DBUILD_TEST=true
make
```
Note that `USE_CMAKE` defaults to `true` if catkin is not installed.
没有合适的资源?快使用搜索试试~ 我知道了~
机器人运动学和动力学_C++_MATLAB_下载.zip
共157个文件
m:46个
hpp:39个
cpp:29个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 146 浏览量
2023-04-25
11:18:39
上传
评论
收藏 1.28MB ZIP 举报
温馨提示
机器人运动学和动力学_C++_MATLAB_下载.zip
资源推荐
资源详情
资源评论
收起资源包目录
机器人运动学和动力学_C++_MATLAB_下载.zip (157个子文件)
references.bib 1KB
IEEEtran.bst 58KB
IEEEtran.cls 197KB
FindGTest.cmake 5KB
FindEigen3.cmake 3KB
FindROS.cmake 2KB
Core 2KB
RotationQuaternionTest.cpp 43KB
RotationMatrixTest.cpp 43KB
AngleAxisTest.cpp 42KB
EulerAnglesZyxTest.cpp 35KB
EulerAnglesXyzTest.cpp 35KB
RotationVectorTest.cpp 33KB
RotationTest.cpp 28KB
QuaternionTest.cpp 28KB
VectorsTest.cpp 17KB
RotationMatrixDiffTest.cpp 16KB
EulerAnglesXyzDiffTest.cpp 14KB
RotationQuaternionDiffTest.cpp 12KB
EulerAnglesZyxDiffTest.cpp 12KB
RotationDiffTest.cpp 12KB
WrenchTest.cpp 11KB
HomogeneousTransformationTest.cpp 9KB
GlobalAngularVelocityTest.cpp 8KB
LocalAngularVelocityTest.cpp 8KB
PositionDiffTest.cpp 7KB
PositionTest.cpp 7KB
TwistWithAngularVelocityTest.cpp 6KB
ConventionTest.cpp 3KB
PoseDiffTest.cpp 3KB
PseudoInverseTest.cpp 3KB
ForceTest.cpp 3KB
CommonTest.cpp 2KB
SkewMatrixFromVectorTest.cpp 2KB
test_main.cpp 2KB
ScalarTest.cpp 1KB
page_rotation.dox 19KB
page_rotationdiff.dox 6KB
mainpage.dox 5KB
page_quaternion.dox 4KB
page_pose.dox 3KB
page_vector.dox 2KB
page_posediff.dox 1KB
.gitignore 606B
Vector.hpp 32KB
RotationQuaternion.hpp 25KB
EulerAnglesZyx.hpp 21KB
EulerAnglesXyz.hpp 18KB
AngleAxis.hpp 18KB
Quaternion.hpp 17KB
assert_macros.hpp 16KB
RotationMatrix.hpp 16KB
RotationBase.hpp 13KB
RotationVector.hpp 13KB
EulerAnglesXyzDiff.hpp 13KB
RotationImpl.hpp 12KB
gtest_eigen.hpp 11KB
gtest_rotations.hpp 11KB
Twist.hpp 11KB
LocalAngularVelocity.hpp 10KB
GlobalAngularVelocity.hpp 10KB
EulerAnglesZyxDiff.hpp 10KB
VectorBase.hpp 9KB
assert_macros_eigen.hpp 9KB
RotationQuaternionDiff.hpp 8KB
QuaternionBase.hpp 8KB
Wrench.hpp 8KB
RotationMatrixDiff.hpp 8KB
HomogeneousTransformation.hpp 7KB
RotationDiffBase.hpp 7KB
PhysicalQuantities.hpp 7KB
common.hpp 6KB
PoseBase.hpp 6KB
Pose.hpp 5KB
LinearAlgebra.hpp 5KB
RotationConversion.hpp 4KB
RotationDiff.hpp 4KB
PoseDiffBase.hpp 3KB
WrenchBase.hpp 3KB
source_file_pos.hpp 3KB
PhysicalType.hpp 2KB
Rotation.hpp 2KB
PoseDiff.hpp 2KB
doxygen.config.in 105KB
cmake_uninstall.cmake.in 1KB
kindrConfig.cmake.in 366B
LICENSE 1KB
fulldiff2.m 7KB
animateLinearVelocity.m 6KB
animateAngularVelocityUsingEulerZYX.m 5KB
rotations.m 5KB
animateAngularVelocityUsingExpMap.m 4KB
visualizeLinearization.m 2KB
visualizeHomogeneousTransform.m 2KB
visualizeCoordinateSystem.m 2KB
linearizationExample.m 1KB
dMATdt.m 1KB
getMapEulAngZYXDDiffToAngAccInBaseFrame.m 1KB
numerical_jacobian.m 821B
getMapEulAngZYXDDiffToAngAccInWorldFrame.m 774B
共 157 条
- 1
- 2
资源评论
快撑死的鱼
- 粉丝: 1w+
- 资源: 9154
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功