-
Notifications
You must be signed in to change notification settings - Fork 72
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
f595739
commit b09d4a2
Showing
54 changed files
with
9,120 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
fort.9 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
[submodule "cmake"] | ||
path = cmake | ||
url = https://github.com/jrl-umi3218/jrl-cmakemodules |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Stéphane Caron <stephane dot caron at lirmm dot fr> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
cmake_minimum_required(VERSION 2.8) | ||
|
||
#set(ROS_BUILD_TYPE Debug) # remove for Release | ||
#set(CXX_DISABLE_WERROR 1) | ||
|
||
set(CMAKE_CXX_FLAGS "-pedantic -Wno-long-long -Wall -Wextra -Wcast-align -Wcast-qual -Wformat -Wwrite-strings -Wconversion") | ||
|
||
include(cmake/base.cmake) | ||
include(cmake/boost.cmake) | ||
|
||
set(PROJECT_NAME lipm_walking_controller) | ||
set(PROJECT_DESCRIPTION "Walking controller based on linear inverted pendulum tracking") | ||
set(PROJECT_URL https://github.com/stephane-caron/lipm_walking_controller/) | ||
set(PROJECT_VERSION 1.0.0) | ||
|
||
# setup_project() # remove for catkin | ||
|
||
project(${PROJECT_NAME}) # because setup_project() is not called | ||
|
||
# Enable C++11 | ||
#if(NOT WIN32) | ||
# add_definitions(-std=c++0x) | ||
#endif() | ||
# Enable C++14 | ||
if(NOT WIN32) | ||
add_definitions(-std=c++14) | ||
endif() | ||
|
||
# Use jrl-cmakemodules to get mc_rtc depency | ||
set(PKG_CONFIG_ADDITIONAL_VARIABLES "${PKG_CONFIG_ADDITIONAL_VARIABLES} libdir") | ||
add_required_dependency(mc_rtc) | ||
|
||
find_package(catkin REQUIRED) | ||
|
||
catkin_package( | ||
CATKIN_DEPENDS | ||
geometry_msgs | ||
roscpp | ||
roslib | ||
std_msgs | ||
tf | ||
) | ||
|
||
include_directories(include ${catkin_INCLUDE_DIRS} $ENV{HOME}/.local/include) | ||
link_directories(${catkin_LIBRARY_DIRS} $ENV{HOME}/.local/lib) | ||
|
||
add_subdirectory(src) | ||
|
||
# setup_project_finalize() # removed for catkin |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,63 @@ | ||
# lipm_walking_controller | ||
Walking and stair climbing controller based on LIPM tracking | ||
# LIPM Walking Controller | ||
|
||
Source code of the walking controller used in the experiments of [Stair | ||
Climbing Stabilization of the HRP-4 Humanoid Robot using Whole-body Admittance | ||
Control](https://hal.archives-ouvertes.fr/hal-01875387/document). | ||
|
||
## Installation | ||
|
||
Compilation has been tested on Ubuntu 14.04 (gcc/clang) with ROS Indigo. | ||
|
||
### Dependencies | ||
|
||
Compilation requires: | ||
|
||
* [ROS](http://www.ros.org/) with a working [catkin workspace](http://wiki.ros.org/catkin/Tutorials/create_a_workspace) | ||
* [SpaceVecAlg](https://github.com/jrl-umi3218/SpaceVecAlg) | ||
* [RBDyn](https://github.com/jrl-umi3218/RBDyn/) | ||
* [eigen-qld](https://github.com/jrl-umi3218/eigen-qld) | ||
* [sch-core](https://github.com/jrl-umi3218/sch-core) | ||
* [Tasks](https://github.com/jrl-umi3218/Tasks/) | ||
* [mc\_rbdyn\_urdf](https://github.com/jrl-umi3218/mc_rbdyn_urdf) | ||
* [eigen-cddlib](https://github.com/vsamy/eigen-cddlib) | ||
* [Copra](https://github.com/vsamy/Copra-deprecated) | ||
|
||
The following dependencies are not publicly released yet but available upon | ||
request to [Pierre Gergondet](mailto:[email protected]): | ||
|
||
* [mc\_rtc](https://gite.lirmm.fr/multi-contact/mc_rtc) | ||
* [mc\_rtc\_ros](https://gite.lirmm.fr/multi-contact/mc_rtc_ros) | ||
* [mc\_rtc\_ros\_data](https://gite.lirmm.fr/multi-contact/mc_rtc_ros_data) | ||
|
||
There is currently an additional dependency to the *EigenQP* library. It is | ||
redundant with *eigen-qld* and will be removed in a future update. | ||
|
||
### Building from source on Linux | ||
|
||
Link `lipm_walking_controller` from the ``src/`` folder of your catkin | ||
workspace, then follow the standard catkin workflow: | ||
|
||
```sh | ||
catkin_make -DCMAKE_BUILD_TYPE=RelWithDebInfo && catkin_make install | ||
``` | ||
|
||
## Usage | ||
|
||
### Visualization | ||
|
||
Launch RViz by: | ||
```sh | ||
roslaunch lipm_walking_controller display.launch | ||
``` | ||
|
||
### Execution | ||
|
||
Run your mc\_rtc interface on the main confuguration file: | ||
```sh | ||
<mc_rtc_interface> lipm_walking_controller/etc/mc_rtc.conf | ||
``` | ||
where ``<mc_rtc_interface>`` is for instance ``mc_vrep`` or ``MCControlTCP``. | ||
|
||
## Thanks | ||
|
||
- To Pierre Gergondet for developing and helping with the mc\_rtc framework |
Oops, something went wrong.