Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into use_cmake
Browse files Browse the repository at this point in the history
Conflicts:
	test/test_SequencePlayer.cpp
  • Loading branch information
k-okada committed Oct 15, 2014
2 parents 7fb8b97 + a9d797b commit 8a4a68b
Show file tree
Hide file tree
Showing 79 changed files with 2,498 additions and 1,142 deletions.
2 changes: 1 addition & 1 deletion .travis.sh
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ case $TEST_PACKAGE in
sudo apt-get install -qq -y freeglut3-dev python-tk jython doxygen libboost-all-dev libsdl1.2-dev libglew1.6-dev libqhull-dev libirrlicht-dev libxmu-dev libcv-dev libhighgui-dev libopencv-contrib-dev
# check rtmros_common
pkg=$TEST_PACKAGE
sudo apt-get install -qq -y python-wstool ros-hydro-catkin ros-hydro-mk ros-hydro-rostest ros-hydro-rtmbuild
sudo apt-get install -qq -y python-wstool ros-hydro-catkin ros-hydro-mk ros-hydro-rostest ros-hydro-rtmbuild ros-hydro-roslint

sudo apt-get install -qq -y ros-hydro-$pkg

Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ set(CPACK_PACKAGE_VENDOR "AIST")
set(CPACK_PACKAGE_CONTACT "Fumio Kanehiro <f-kanehiro@aist.go.jp>")
set(CPACK_PACKAGE_VERSION_MAJOR 315)
set(CPACK_PACKAGE_VERSION_MINOR 2)
set(CPACK_PACKAGE_VERSION_PATCH 5)
set(CPACK_PACKAGE_VERSION_PATCH 7)
execute_process(
COMMAND date +%Y%m%d%H%M
OUTPUT_VARIABLE CPACK_PACKAGE_DATE
Expand Down
9 changes: 9 additions & 0 deletions doc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ set(input_files package.h utilities.h
../rtc/VirtualCamera/VirtualCamera.txt
../rtc/VirtualForceSensor/VirtualForceSensor.txt
../rtc/WavPlayer/WavPlayer.txt
../rtc/Stabilizer/Stabilizer.txt
../rtc/AutoBalancer/AutoBalancer.txt
../rtc/KalmanFilter/KalmanFilter.txt
../rtc/ImpedanceController/ImpedanceController.txt
../rtc/RemoveForceSensorLinkOffset/RemoveForceSensorLinkOffset.txt
../lib/io/iob.h
../idl/CollisionDetectorService.idl
../idl/DataLoggerService.idl
Expand All @@ -37,6 +42,10 @@ set(input_files package.h utilities.h
../idl/StateHolderService.idl
../idl/TimeKeeperService.idl
../idl/WavPlayerService.idl
../idl/AutoBalancerService.idl
../idl/StabilizerService.idl
../idl/KalmanFilterService.idl
../idl/RemoveForceSensorLinkOffsetService.idl
)
configure_file(Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
set(output_dir ${CMAKE_CURRENT_BINARY_DIR}/html)
Expand Down
27 changes: 25 additions & 2 deletions doc/Doxyfile.in
Original file line number Diff line number Diff line change
Expand Up @@ -468,29 +468,52 @@ INPUT = @CMAKE_CURRENT_SOURCE_DIR@/package.h \
@CMAKE_CURRENT_SOURCE_DIR@/utilities.h \
@CMAKE_CURRENT_SOURCE_DIR@/../python/hrpsys_config.py \
@CMAKE_CURRENT_SOURCE_DIR@/../python/rtm.py \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/AutoBalancer \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/AverageFilter \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/CameraImageViewer \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/CaptureController \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/CollisionDetector \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/DataLogger \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/ExtractCameraImage \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/ForwardKinematics \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/GraspController \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/HGcontroller \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/ImageData2CameraImage \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/ImpedanceController \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Joystick \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Joystick2PanTiltAngles \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Joystick2Velocity2D \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Joystick2Velocity3D \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Joystick2PanTiltAngles \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/JpegDecoder \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/JpegEncoder \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/KalmanFilter \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/NullComponent \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/OccupancyGridMap3D \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/OGMap3DViewer \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/OccupancyGridMap3D \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/PCDLoader \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/PlaneRemover \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/RGB2Gray \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Range2PointCloud \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/RangeDataViewer \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/RangeNoiseMixer \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/RemoveForceSensorLinkOffset \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/ResizeImage \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/RobotHardware \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/SORFilter \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/SequencePlayer \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/ServoController \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Simulator \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/SoftErrorLimiter \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Stabilizer \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/StateHolder \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/ThermoEstimator \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/ThermoLimiter \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/TorqueController \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/TorqueFilter \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/VideoCapture \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/Viewer \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/VirtualCamera \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/VirtualForceSensor \
@CMAKE_CURRENT_SOURCE_DIR@/../rtc/WavPlayer \
@CMAKE_CURRENT_SOURCE_DIR@/../lib/io/iob.h \
@CMAKE_CURRENT_SOURCE_DIR@/../idl \
Expand Down
37 changes: 34 additions & 3 deletions doc/package.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Basic RT components and utilities to control robots using <a href=http://www.ope
\section requirements System requirements
<a href=http://www.ubuntu.com>ubuntu</a> 12.04LTS is supported. <br>
<a href=http://www.openrtp.jp/openhrp3>%OpenHRP</a> version 3.1.4 or later is required.<br>
<a href=http://www.openrtp.jp/openhrp3>%OpenHRP</a> version 3.1.5 or later is required.<br>
To use python scripts to create RT components, connect ports and get/set properties, <a href=http://www.openrtm.org>OpenRTM-aist-python</a> is also required.<br>
\section contents Contents of the package
Expand All @@ -20,27 +20,49 @@ To use python scripts to create RT components, connect ports and get/set propert
This library helps to create/delete and activate/deactivate RT components and connect/disconnect ports.</li>
<li>Basic RT components</li>
<ul>
<li>\ref AutoBalancer</li>
<li>\ref AverageFilter</li>
<li>\ref CameraImageViewer</li>
<li>\ref CaptureController</li>
<li>\ref CollisionDetector</li>
<li>\ref DataLogger</li>
<li>\ref ExtractCameraImage</li>
<li>\ref ForwardKinematics</li>
<li>\ref GraspController</li>
<li>\ref HGcontroller</li>
<li>\ref ImageData2CameraImage</li>
<li>\ref ImpedanceController</li>
<li>\ref Joystick</li>
<li>\ref Joystick2Velocity2D</li>
<li>\ref Joystick2Velocity3D</li>
<li>\ref Joystick2PanTiltAngles</li>
<li>\ref JpegDecoder</li>
<li>\ref JpegEncoder</li>
<li>\ref KalmanFilter</li>
<li>\ref NullComponent</li>
<li>\ref OccupancyGridMap3D</li>
<li>\ref OGMap3DViewer</li>
<li>\ref OccupancyGridMap3D</li>
<li>\ref PCDLoader</li>
<li>\ref PDcontroller</li>
<li>\ref PlaneRemover</li>
<li>\ref RGB2Gray</li>
<li>\ref Range2PointCloud</li>
<li>\ref RangeDataViewer</li>
<li>\ref RangeNoiseMixer</li>
<li>\ref RemoveForceSensorLinkOffset</li>
<li>\ref ResizeImage</li>
<li>\ref RobotHardware</li>
<li>\ref SORFilter</li>
<li>\ref SequencePlayer</li>
<li>\ref ServoController</li>
<li>\ref Simulator</li>
<li>\ref SoftErrorLimiter</li>
<li>\ref Stabilizer</li>
<li>\ref StateHolder</li>
<li>\ref ThermoEstimator</li>
<li>\ref ThermoLimiter</li>
<li>\ref TorqueController</li>
<li>\ref TorqueFilter</li>
<li>\ref VideoCapture</li>
<li>\ref Viewer</li>
<li>\ref VirtualCamera</li>
Expand All @@ -49,18 +71,27 @@ To use python scripts to create RT components, connect ports and get/set propert
</ul>
<li>Services provided by basic RT components</li>
<ul>
<li>\ref OpenHRP::AutoBalancerService</li>
<li>\ref OpenHRP::CollisionDetectorService</li>
<li>\ref OpenHRP::DataLoggerService</li>
<li>\ref OpenHRP::ExecutionProfileService</li>
<li>\ref OpenHRP::ForwardKinematicsService</li>
<li>\ref OpenHRP::GraspControllerService</li>
<li>\ref Img::CameraCaptureService</li>
<li>\ref OpenHRP::ImpedanceControllerService</li>
<li>\ref OpenHRP::KalmanFilterService</li>
<li>\ref OpenHRP::OGMap3DService</li>
<li>\ref OpenHRP::RemoveForceSensorLinkOffsetService</li>
<li>\ref OpenHRP::RobotHardwareService</li>
<li>\ref OpenHRP::SequencePlayerService</li>
<li>\ref OpenHRP::SeftErrorLimiterService</li>
<li>\ref OpenHRP::ServoControllerService</li>
<li>\ref OpenHRP::SoftErrorLimiterService</li>
<li>\ref OpenHRP::StabilizerService</li>
<li>\ref OpenHRP::StateHolderService</li>
<li>\ref OpenHRP::TimeKeeperService</li>
<li>\ref OpenHRP::TorqueControllerService</li>
<li>\ref OpenHRP::TorqueFilterService</li>
<li>\ref OpenHRP::VirtualForceSensorService</li>
<li>\ref OpenHRP::WavPlayerService</li>
</ul>
<li>Utilities</li>
Expand Down
23 changes: 18 additions & 5 deletions doc/utilities.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,26 @@ hrpsys-simulator [project file] [options]
-max-log-length length[s] set length of ring buffer<br>
-exit-on-finish exit this program when the simulation finishes
Note:NameSever and openhrp-model-loader must be running
Note:NameServer and openhrp-model-loader must be running
In order to change timestep (ex 0.002), you need to change SampleRobot.conf to
dt: 0.002
and SampleRobot.xml to
<property name="SampleRobot(Robot)0.period" value="0.002"/>
<property name="timeStep" value="0.002"/>
dt of SampleRobot.conf and XX.period of SampleRobot.xml should be same.
timeStep of SampleRobot.xml is not larger than these values.
\section hrpsys-simulator-jython hrpsys-simulator-jython
read a project file and execute simulation and a jython script
Note:NameSever and openhrp-model-loader must be running
Note:NameServer and openhrp-model-loader must be running
hrpsys-simulator-jython [project file] [jython script] [options]
Expand Down Expand Up @@ -57,7 +70,7 @@ size [size] set window size<br>
bg [r] [g] [b] background color
max-log-length length[s] set length of ring buffer<br>
Note:NameSever and openhrp-model-loader must be running
Note:NameServer and openhrp-model-loader must be running
\section hrpsys-viewer hrpsys-viewer
Expand All @@ -69,7 +82,7 @@ hrpsys-viewer [model file] [-size size]
-no-default-lights turn off default lights<br>
-max-edge-length divide large triangles which have longer edges than this value<br>
Note:NameSever and openhrp-model-loader must be running
Note:NameServer and openhrp-model-loader must be running
\section hrpsys-monitor hrpsys-monitor
Expand All @@ -82,7 +95,7 @@ hrpsys-monitor [project file] [-rh rtcName] [-sh rtcName] [-size size]
-size initial window size<br>
-bg r g b background color
Note:NameSever and openhrp-model-loader must be running
Note:NameServer and openhrp-model-loader must be running
\section hrpsysjy hrpsysjy
Expand Down
88 changes: 67 additions & 21 deletions idl/AutoBalancerService.idl
Original file line number Diff line number Diff line change
Expand Up @@ -13,54 +13,100 @@ module OpenHRP
typedef double DblArray3[3];
typedef double DblArray4[4];

// Foot Step
/**
* @struct Footstep
* @brief Foot step for one leg.
*/
struct Footstep
{
DblArray3 pos; // Foot position [m]
DblArray4 rot; // Foot orientation by quaternion (w,x,y,z)
string leg; // Leg name (rleg or lleg)
/// Foot position [m]
DblArray3 pos;
/// Foot orientation by quaternion (w,x,y,z)
DblArray4 rot;
/// Leg name (rleg or lleg)
string leg;
};

/**
* @struct FootstepSequence
* @brief Sequence of foot step.
*/
typedef sequence<Footstep> FootstepSequence;

/**
* @enum SupportLegState
* @brief State of support leg.
*/
enum SupportLegState {
RLEG,
LLEG,
BOTH
};

/**
* @enum OrbitType
* @brief Orbit type of swing foot.
*/
enum OrbitType {
SHUFFLING,
CYCLOID,
RECTANGLE
};

/**
* @struct FootstepParam
* @brief Foot step parameters.
*/
struct FootstepParam
{
Footstep rleg_coords; // Current right foot coords
Footstep lleg_coords; // Current left foot coords
Footstep support_leg_coords; // Support foot coords
Footstep swing_leg_coords; // Swing foot coords, which is interpolation betwee swing_leg_src_coords and swing_leg_dst_coords
Footstep swing_leg_src_coords; // Source coords for swing foot
Footstep swing_leg_dst_coords; // Destination coords for swing foot
Footstep dst_foot_midcoords; // Destination foot midcoords
SupportLegState support_leg; // RLEG or LLEG
SupportLegState support_leg_with_both; // RLEG, LLEG, or BOTH
/// Current right foot coords
Footstep rleg_coords;
/// Current left foot coords
Footstep lleg_coords;
/// Support foot coords
Footstep support_leg_coords;
/// Swing foot coords, which is interpolation betwee swing_leg_src_coords and swing_leg_dst_coords
Footstep swing_leg_coords;
/// Source coords for swing foot
Footstep swing_leg_src_coords;
/// Destination coords for swing foot
Footstep swing_leg_dst_coords;
/// Destination foot midcoords
Footstep dst_foot_midcoords;
/// RLEG or LLEG
SupportLegState support_leg;
/// RLEG, LLEG, or BOTH
SupportLegState support_leg_with_both;
};

typedef sequence<string> StrSequence;

struct GaitGeneratorParam // Parameters for GaitGenerator
/**
* @struct GaitGeneratorParam
* @brief Parameters for GaitGenerator.
*/
struct GaitGeneratorParam
{
double default_step_time; // Step time [s]
double default_step_height; // Step height [m]
double default_double_support_ratio; // Ratio of double support period. Ratio is included in (0, 1). Double support period time is default_double_support_ratio*default_step_time.
sequence<double, 3> stride_parameter; // Stride limitation of x[m], y[m], and theta[deg] for goPos
OrbitType default_orbit_type; // Default OrbitType
/// Step time [s]
double default_step_time;
/// Step height [m]
double default_step_height;
/// Ratio of double support period. Ratio is included in (0, 1). Double support period time is default_double_support_ratio*default_step_time.
double default_double_support_ratio;
/// Stride limitation of x[m], y[m], and theta[deg] for goPos
sequence<double, 3> stride_parameter;
/// Default OrbitType
OrbitType default_orbit_type;
};

struct AutoBalancerParam // Parameters for AutoBalancer
/**
* @struct AutoBalancerParam
* @brief Parameters for AutoBalancer
*/
struct AutoBalancerParam
{
sequence<DblSequence3, 2> default_zmp_offsets; // ZMP offset vectors[m] for rleg and lleg (<-please set by this order)
/// ZMP offset vectors[m] for rleg and lleg (<-please set by this order)
sequence<DblSequence3, 2> default_zmp_offsets;
double move_base_gain;
};

Expand Down
Loading

0 comments on commit 8a4a68b

Please sign in to comment.