From 3cb37bf37b1bd3fe2b0fdd1c6126ff0fca7ad15e Mon Sep 17 00:00:00 2001 From: Pyo Date: Wed, 28 Mar 2018 20:15:46 +0900 Subject: [PATCH 1/7] Update and rename detector_params.cfg to DetectorParams.cfg --- ball_detector/cfg/{detector_params.cfg => DetectorParams.cfg} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename ball_detector/cfg/{detector_params.cfg => DetectorParams.cfg} (97%) diff --git a/ball_detector/cfg/detector_params.cfg b/ball_detector/cfg/DetectorParams.cfg similarity index 97% rename from ball_detector/cfg/detector_params.cfg rename to ball_detector/cfg/DetectorParams.cfg index 2d61d6c..1d3e29c 100755 --- a/ball_detector/cfg/detector_params.cfg +++ b/ball_detector/cfg/DetectorParams.cfg @@ -30,4 +30,4 @@ gen.add("filter2_v_max",int_t , -1, "Threshold of V filter", 255, 0, 255) gen.add("ellipse_size",int_t , -1, "Ellipse size", 2, 1, 9) gen.add("debug_image", bool_t, 0, "Show filtered image to debug", False) -exit(gen.generate(PACKAGE, "ball_detector_node", "detectorParams")) +exit(gen.generate(PACKAGE, "ball_detector_node", "DetectorParams")) From 04409995704db20e4cda5868bf4ffb842d8e063f Mon Sep 17 00:00:00 2001 From: Pyo Date: Fri, 30 Mar 2018 22:18:17 +0900 Subject: [PATCH 2/7] refacoring to release --- .travis.yml | 2 +- README.md | 34 ++++++ ball_detector/CMakeLists.txt | 64 +++++++--- ...params_blue.cfg => DetectorParamsBlue.cfg} | 2 +- ...r_params_red.cfg => DetectorParamsRed.cfg} | 2 +- .../ball_detector_params.yaml | 0 .../ball_detector_params_default.yaml | 0 .../ball_detector_params_op.yaml | 0 .../include/ball_detector/ball_detector.h | 27 +++-- ball_detector/launch/ball_detector.launch | 16 +-- .../launch/ball_detector_from_usb_cam.launch | 45 ++++---- .../launch/ball_detector_from_uvc.launch | 50 ++++---- ...cleSetStamped.msg => CircleSetStamped.msg} | 0 ball_detector/package.xml | 49 ++++---- .../{launch => rviz}/ball_detector.rviz | 0 ball_detector/src/ball_detector.cpp | 7 +- op3_demo/CMakeLists.txt | 109 +++++++++++------- .../mp3/Autonomous soccer mode.mp3 | Bin op3_demo/{Data => data}/mp3/Bye bye.mp3 | Bin op3_demo/{Data => data}/mp3/Clap please.mp3 | Bin .../mp3/Demonstration ready mode.mp3 | Bin op3_demo/{Data => data}/mp3/Headstand.mp3 | Bin .../mp3/Interactive motion mode.mp3 | Bin op3_demo/{Data => data}/mp3/Intro01.mp3 | Bin op3_demo/{Data => data}/mp3/Intro02.mp3 | Bin op3_demo/{Data => data}/mp3/Intro03.mp3 | Bin op3_demo/{Data => data}/mp3/Introduction.mp3 | Bin op3_demo/{Data => data}/mp3/Left kick.mp3 | Bin op3_demo/{Data => data}/mp3/No.mp3 | Bin op3_demo/{Data => data}/mp3/Oops.mp3 | Bin op3_demo/{Data => data}/mp3/Right kick.mp3 | Bin .../mp3/Sensor calibration complete.mp3 | Bin .../mp3/Sensor calibration fail.mp3 | Bin op3_demo/{Data => data}/mp3/Shoot.mp3 | Bin op3_demo/{Data => data}/mp3/Sit down.mp3 | Bin op3_demo/{Data => data}/mp3/Stand up.mp3 | Bin .../mp3/Start motion demonstration.mp3 | Bin .../mp3/Start soccer demonstration.mp3 | Bin .../Start vision processing demonstration.mp3 | Bin .../{Data => data}/mp3/System shutdown.mp3 | Bin op3_demo/{Data => data}/mp3/Thank you.mp3 | Bin .../mp3/Vision processing mode.mp3 | Bin op3_demo/{Data => data}/mp3/Wow.mp3 | Bin op3_demo/{Data => data}/mp3/Yes go.mp3 | Bin op3_demo/{Data => data}/mp3/Yes.mp3 | Bin op3_demo/{Data => data}/mp3/intro_test.mp3 | Bin .../mp3/test/Announce mic test.mp3 | Bin .../mp3/test/Button test mode.mp3 | Bin .../{Data => data}/mp3/test/Mic test mode.mp3 | Bin .../mp3/test/Mode button long pressed.mp3 | Bin .../mp3/test/Mode button pressed.mp3 | Bin .../mp3/test/Self test ready mode.mp3 | Bin .../mp3/test/Start button long pressed.mp3 | Bin .../mp3/test/Start button pressed.mp3 | Bin .../mp3/test/Start button test mode.mp3 | Bin .../mp3/test/Start mic test mode.mp3 | Bin .../{Data => data}/mp3/test/Start playing.mp3 | Bin .../mp3/test/Start recording.mp3 | Bin .../mp3/test/User button long pressed.mp3 | Bin .../mp3/test/User button pressed.mp3 | Bin op3_demo/include/op3_demo/action_demo.h | 6 +- op3_demo/include/op3_demo/ball_follower.h | 6 +- op3_demo/include/op3_demo/ball_tracker.h | 9 +- op3_demo/include/op3_demo/button_test.h | 4 +- op3_demo/include/op3_demo/face_tracker.h | 3 +- op3_demo/include/op3_demo/mic_test.h | 4 +- op3_demo/include/op3_demo/soccer_demo.h | 11 +- op3_demo/include/op3_demo/vision_demo.h | 9 +- op3_demo/launch/demo.launch | 2 - op3_demo/launch/face_detection_op3.launch | 20 ++-- op3_demo/launch/self_test.launch | 37 +++--- op3_demo/list/action_script.yaml | 23 ++++ .../{script => list}/action_script_bk.yaml | 20 ++-- op3_demo/package.xml | 50 ++++---- op3_demo/script/action_script.yaml | 23 ---- op3_demo/src/action/action_demo.cpp | 2 +- op3_demo/src/demo_node.cpp | 2 +- op3_demo/src/soccer/ball_tracker.cpp | 2 +- op3_demo/src/test/button_test.cpp | 2 +- op3_demo/src/test/mic_test.cpp | 4 +- op3_demo/src/test_node.cpp | 2 +- robotis_op3_demo/CMakeLists.txt | 2 +- robotis_op3_demo/package.xml | 23 ++-- 83 files changed, 382 insertions(+), 291 deletions(-) create mode 100644 README.md rename ball_detector/cfg/{detector_params_blue.cfg => DetectorParamsBlue.cfg} (96%) rename ball_detector/cfg/{detector_params_red.cfg => DetectorParamsRed.cfg} (96%) rename ball_detector/{launch => config}/ball_detector_params.yaml (100%) rename ball_detector/{launch => config}/ball_detector_params_default.yaml (100%) rename ball_detector/{launch => config}/ball_detector_params_op.yaml (100%) rename ball_detector/msg/{circleSetStamped.msg => CircleSetStamped.msg} (100%) rename ball_detector/{launch => rviz}/ball_detector.rviz (100%) rename op3_demo/{Data => data}/mp3/Autonomous soccer mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/Bye bye.mp3 (100%) rename op3_demo/{Data => data}/mp3/Clap please.mp3 (100%) rename op3_demo/{Data => data}/mp3/Demonstration ready mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/Headstand.mp3 (100%) rename op3_demo/{Data => data}/mp3/Interactive motion mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/Intro01.mp3 (100%) rename op3_demo/{Data => data}/mp3/Intro02.mp3 (100%) rename op3_demo/{Data => data}/mp3/Intro03.mp3 (100%) rename op3_demo/{Data => data}/mp3/Introduction.mp3 (100%) rename op3_demo/{Data => data}/mp3/Left kick.mp3 (100%) rename op3_demo/{Data => data}/mp3/No.mp3 (100%) rename op3_demo/{Data => data}/mp3/Oops.mp3 (100%) rename op3_demo/{Data => data}/mp3/Right kick.mp3 (100%) rename op3_demo/{Data => data}/mp3/Sensor calibration complete.mp3 (100%) rename op3_demo/{Data => data}/mp3/Sensor calibration fail.mp3 (100%) rename op3_demo/{Data => data}/mp3/Shoot.mp3 (100%) rename op3_demo/{Data => data}/mp3/Sit down.mp3 (100%) rename op3_demo/{Data => data}/mp3/Stand up.mp3 (100%) rename op3_demo/{Data => data}/mp3/Start motion demonstration.mp3 (100%) rename op3_demo/{Data => data}/mp3/Start soccer demonstration.mp3 (100%) rename op3_demo/{Data => data}/mp3/Start vision processing demonstration.mp3 (100%) rename op3_demo/{Data => data}/mp3/System shutdown.mp3 (100%) rename op3_demo/{Data => data}/mp3/Thank you.mp3 (100%) rename op3_demo/{Data => data}/mp3/Vision processing mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/Wow.mp3 (100%) rename op3_demo/{Data => data}/mp3/Yes go.mp3 (100%) rename op3_demo/{Data => data}/mp3/Yes.mp3 (100%) rename op3_demo/{Data => data}/mp3/intro_test.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Announce mic test.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Button test mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Mic test mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Mode button long pressed.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Mode button pressed.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Self test ready mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Start button long pressed.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Start button pressed.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Start button test mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Start mic test mode.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Start playing.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/Start recording.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/User button long pressed.mp3 (100%) rename op3_demo/{Data => data}/mp3/test/User button pressed.mp3 (100%) create mode 100644 op3_demo/list/action_script.yaml rename op3_demo/{script => list}/action_script_bk.yaml (72%) delete mode 100644 op3_demo/script/action_script.yaml diff --git a/.travis.yml b/.travis.yml index 07bc3c6..cbc9951 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,7 +12,7 @@ compiler: - gcc notifications: email: - on_success: always + on_success: change on_failure: always recipients: - pyo@robotis.com diff --git a/README.md b/README.md new file mode 100644 index 0000000..2387548 --- /dev/null +++ b/README.md @@ -0,0 +1,34 @@ +## ROBOTIS OP3 + + +## ROS Packages for ROBOTIS OP3 Demo +|Version|Kinetic + Ubuntu Xenial|Melodic + Ubuntu Bionic| +|:---:|:---:|:---:| +|[![GitHub version](https://badge.fury.io/gh/ROBOTIS-GIT%2FROBOTIS-OP3-Demo.svg)](https://badge.fury.io/gh/ROBOTIS-GIT%2FROBOTIS-OP3-Demo)|[![Build Status](https://travis-ci.org/ROBOTIS-GIT/ROBOTIS-OP3-Demo.svg?branch=kinetic-devel)](https://travis-ci.org/ROBOTIS-GIT/ROBOTIS-OP3-Demo)|-| + +## ROBOTIS e-Manual for ROBOTIS OP3 +- [ROBOTIS e-Manual for ROBOTIS OP3](http://emanual.robotis.com/docs/en/platform/op3/introduction/) + +## Wiki for robotis_op3_demo Packages +- http://wiki.ros.org/robotis_op3_demo (metapackage) +- http://wiki.ros.org/ball_detector +- http://wiki.ros.org/op3_demo + +## Open Source related to ROBOTIS OP3 +- [robotis_op3](https://github.com/ROBOTIS-GIT/ROBOTIS-OP3) +- [robotis_op3_msgs](https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-msgs) +- [robotis_op3_common](https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Common) +- [robotis_op3_tools](https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Tools) +- [robotis_op3_demo](https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Demo) +- [robotis_framework](https://github.com/ROBOTIS-GIT/ROBOTIS-Framework) +- [robotis_controller_msgs](https://github.com/ROBOTIS-GIT/ROBOTIS-Framework-msgs) +- [robotis_utility](https://github.com/ROBOTIS-GIT/ROBOTIS-Utility) +- [robotis_math](https://github.com/ROBOTIS-GIT/ROBOTIS-Math) +- [dynamixel_sdk](https://github.com/ROBOTIS-GIT/DynamixelSDK) +- [OpenCR-Hardware](https://github.com/ROBOTIS-GIT/OpenCR-Hardware) +- [OpenCR](https://github.com/ROBOTIS-GIT/OpenCR) + +## Documents and Videos related to ROBOTIS OP3 +- [ROBOTIS e-Manual for ROBOTIS OP3](http://emanual.robotis.com/docs/en/platform/op3/introduction/) +- [ROBOTIS e-Manual for ROBOTIS Framework](http://emanual.robotis.com/docs/en/software/robotis_framework_packages/) +- [ROBOTIS e-Manual for Dynamixel SDK](http://emanual.robotis.com/docs/en/software/dynamixel/dynamixel_sdk/overview/) diff --git a/ball_detector/CMakeLists.txt b/ball_detector/CMakeLists.txt index a79af76..647cfdd 100644 --- a/ball_detector/CMakeLists.txt +++ b/ball_detector/CMakeLists.txt @@ -1,30 +1,34 @@ ################################################################################ -# CMake +# Set minimum required version of cmake, project name and compile options ################################################################################ cmake_minimum_required(VERSION 2.8.3) project(ball_detector) ################################################################################ -# Packages +# Find catkin packages and libraries for catkin and system dependencies ################################################################################ find_package(catkin REQUIRED COMPONENTS - roslib - cv_bridge - geometry_msgs - image_transport roscpp - rospy + roslib std_msgs + sensor_msgs + geometry_msgs dynamic_reconfigure + cv_bridge + image_transport message_generation ) +################################################################################ +# Setup for python modules and scripts +################################################################################ + ################################################################################ # Declare ROS messages, services and actions ################################################################################ add_message_files( FILES - circleSetStamped.msg + CircleSetStamped.msg BallDetectorParams.msg ) @@ -36,21 +40,34 @@ add_service_files( generate_messages( DEPENDENCIES - geometry_msgs std_msgs + std_msgs + geometry_msgs ) ################################################################################ # Declare ROS dynamic reconfigure parameters ################################################################################ -generate_dynamic_reconfigure_options(cfg/detector_params.cfg) +generate_dynamic_reconfigure_options( + cfg/DetectorParams.cfg +) ################################################################################ -# Catkin specific configuration -################################################################################ +# Declare catkin specific configuration to be passed to dependent projects +################################################################################## catkin_package( INCLUDE_DIRS include - CATKIN_DEPENDS cv_bridge geometry_msgs image_transport roscpp rospy std_msgs dynamic_reconfigure + CATKIN_DEPENDS + roscpp + roslib + std_msgs + sensor_msgs + geometry_msgs + dynamic_reconfigure + cv_bridge + image_transport + message_runtime + DEPENDS Boost OpenCV ) ################################################################################ @@ -59,22 +76,39 @@ catkin_package( include_directories( include ${catkin_INCLUDE_DIRS} + ${Boost_INCLUDE_DIRS} + ${OpenCV_INCLUDE_DIRS} + ${YAML_CPP_INCLUDE_DIRS} ) add_executable(ball_detector_node src/ball_detector.cpp - src/ball_detector_node.cpp) + src/ball_detector_node.cpp +) add_dependencies(ball_detector_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) target_link_libraries(ball_detector_node ${catkin_LIBRARIES} - yaml-cpp + ${Boost_LIBRARIES} + ${OpenCV_LIBRARIES} + ${YAML_CPP_LIBRARIES} ) ################################################################################ # Install ################################################################################ +install(TARGETS ball_detector_node + RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +) + +install(DIRECTORY include/${PROJECT_NAME}/ + DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} +) + +install(DIRECTORY config launch rviz + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} +) ################################################################################ # Test diff --git a/ball_detector/cfg/detector_params_blue.cfg b/ball_detector/cfg/DetectorParamsBlue.cfg similarity index 96% rename from ball_detector/cfg/detector_params_blue.cfg rename to ball_detector/cfg/DetectorParamsBlue.cfg index 2d61d6c..b9bd967 100755 --- a/ball_detector/cfg/detector_params_blue.cfg +++ b/ball_detector/cfg/DetectorParamsBlue.cfg @@ -30,4 +30,4 @@ gen.add("filter2_v_max",int_t , -1, "Threshold of V filter", 255, 0, 255) gen.add("ellipse_size",int_t , -1, "Ellipse size", 2, 1, 9) gen.add("debug_image", bool_t, 0, "Show filtered image to debug", False) -exit(gen.generate(PACKAGE, "ball_detector_node", "detectorParams")) +exit(gen.generate(PACKAGE, "ball_detector_node", "DetectorParamsBlue")) diff --git a/ball_detector/cfg/detector_params_red.cfg b/ball_detector/cfg/DetectorParamsRed.cfg similarity index 96% rename from ball_detector/cfg/detector_params_red.cfg rename to ball_detector/cfg/DetectorParamsRed.cfg index 4fa6a18..79d08a2 100755 --- a/ball_detector/cfg/detector_params_red.cfg +++ b/ball_detector/cfg/DetectorParamsRed.cfg @@ -30,4 +30,4 @@ gen.add("filter2_v_max",int_t , -1, "Threshold of V filter", 255, 0, 255) gen.add("ellipse_size",int_t , -1, "Ellipse size", 5, 1, 9) gen.add("debug_image", bool_t, 0, "Show filtered image to debug", False) -exit(gen.generate(PACKAGE, "ball_detector_node", "detectorParams")) +exit(gen.generate(PACKAGE, "ball_detector_node", "DetectorParamsRed")) diff --git a/ball_detector/launch/ball_detector_params.yaml b/ball_detector/config/ball_detector_params.yaml similarity index 100% rename from ball_detector/launch/ball_detector_params.yaml rename to ball_detector/config/ball_detector_params.yaml diff --git a/ball_detector/launch/ball_detector_params_default.yaml b/ball_detector/config/ball_detector_params_default.yaml similarity index 100% rename from ball_detector/launch/ball_detector_params_default.yaml rename to ball_detector/config/ball_detector_params_default.yaml diff --git a/ball_detector/launch/ball_detector_params_op.yaml b/ball_detector/config/ball_detector_params_op.yaml similarity index 100% rename from ball_detector/launch/ball_detector_params_op.yaml rename to ball_detector/config/ball_detector_params_op.yaml diff --git a/ball_detector/include/ball_detector/ball_detector.h b/ball_detector/include/ball_detector/ball_detector.h index b246ff3..96a9981 100644 --- a/ball_detector/include/ball_detector/ball_detector.h +++ b/ball_detector/include/ball_detector/ball_detector.h @@ -21,23 +21,26 @@ #include -#include -#include - -//ros dependencies #include #include #include #include -#include -#include #include #include #include +#include +#include + +#include +#include +#include +#include + +#include "ball_detector/DetectorParamsConfig.h" -#include "ball_detector/circleSetStamped.h" #include "ball_detector/ball_detector_config.h" -#include "ball_detector/detectorParamsConfig.h" + +#include "ball_detector/CircleSetStamped.h" #include "ball_detector/GetParameters.h" #include "ball_detector/SetParameters.h" @@ -71,7 +74,7 @@ class BallDetector //callbacks to camera info subscription void cameraInfoCallback(const sensor_msgs::CameraInfo & msg); - void dynParamCallback(ball_detector::detectorParamsConfig &config, uint32_t level); + void dynParamCallback(ball_detector::DetectorParamsConfig &config, uint32_t level); void enableCallback(const std_msgs::Bool::ConstPtr &msg); void paramCommandCallback(const std_msgs::String::ConstPtr &msg); @@ -112,7 +115,7 @@ class BallDetector int not_found_count_; //circle set publisher - ball_detector::circleSetStamped circles_msg_; + ball_detector::CircleSetStamped circles_msg_; ros::Publisher circles_pub_; //camera info subscriber @@ -154,8 +157,8 @@ class BallDetector cv::Mat in_image_; cv::Mat out_image_; - dynamic_reconfigure::Server param_server_; - dynamic_reconfigure::Server::CallbackType callback_fnc_; + dynamic_reconfigure::Server param_server_; + dynamic_reconfigure::Server::CallbackType callback_fnc_; }; } // namespace robotis_op diff --git a/ball_detector/launch/ball_detector.launch b/ball_detector/launch/ball_detector.launch index 05cc278..34a12ba 100644 --- a/ball_detector/launch/ball_detector.launch +++ b/ball_detector/launch/ball_detector.launch @@ -1,13 +1,13 @@ - + - - - - - - - + + + + + + + diff --git a/ball_detector/launch/ball_detector_from_usb_cam.launch b/ball_detector/launch/ball_detector_from_usb_cam.launch index e84838b..44ecad5 100644 --- a/ball_detector/launch/ball_detector_from_usb_cam.launch +++ b/ball_detector/launch/ball_detector_from_usb_cam.launch @@ -1,28 +1,27 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + diff --git a/ball_detector/launch/ball_detector_from_uvc.launch b/ball_detector/launch/ball_detector_from_uvc.launch index 4ef7b43..5946129 100644 --- a/ball_detector/launch/ball_detector_from_uvc.launch +++ b/ball_detector/launch/ball_detector_from_uvc.launch @@ -1,30 +1,30 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + diff --git a/ball_detector/msg/circleSetStamped.msg b/ball_detector/msg/CircleSetStamped.msg similarity index 100% rename from ball_detector/msg/circleSetStamped.msg rename to ball_detector/msg/CircleSetStamped.msg diff --git a/ball_detector/package.xml b/ball_detector/package.xml index 79f988f..e383f47 100644 --- a/ball_detector/package.xml +++ b/ball_detector/package.xml @@ -1,33 +1,34 @@ - + ball_detector 0.1.0 - This package implements a circle-like shape detector of the input image. - It requires and input image and publish, at frame rate, a marked image - and a stamped array of circle centers and radius. + This package implements a circle-like shape detector of the input image. + It requires and input image and publish, at frame rate, a marked image + and a stamped array of circle centers and radius. - Apache License 2.0 - kayman + Apache 2.0 + Kayman Pyo - + http://wiki.ros.org/ball_detector + http://emanual.robotis.com/docs/en/platform/op3/introduction/ + https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Demo + https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Demo/issues catkin - roslib - cv_bridge - geometry_msgs - image_transport - roscpp - rospy - std_msgs - dynamic_reconfigure + roscpp + roslib + std_msgs + sensor_msgs + geometry_msgs + dynamic_reconfigure + cv_bridge + image_transport + boost + opencv + yaml-cpp message_generation - roslib - cv_bridge - geometry_msgs - image_transport - roscpp - rospy - std_msgs - dynamic_reconfigure - message_runtime + message_runtime + message_runtime + usb_cam + uvc_camera diff --git a/ball_detector/launch/ball_detector.rviz b/ball_detector/rviz/ball_detector.rviz similarity index 100% rename from ball_detector/launch/ball_detector.rviz rename to ball_detector/rviz/ball_detector.rviz diff --git a/ball_detector/src/ball_detector.cpp b/ball_detector/src/ball_detector.cpp index df4fe80..7dbba3c 100644 --- a/ball_detector/src/ball_detector.cpp +++ b/ball_detector/src/ball_detector.cpp @@ -16,7 +16,6 @@ /* Author: Kayman Jung */ -#include #include #include "ball_detector/ball_detector.h" @@ -72,7 +71,7 @@ BallDetector::BallDetector() //sets publishers image_pub_ = it_.advertise("image_out", 100); - circles_pub_ = nh_.advertise("circle_set", 100); + circles_pub_ = nh_.advertise("circle_set", 100); camera_info_pub_ = nh_.advertise("camera_info", 100); //sets subscribers @@ -92,7 +91,7 @@ BallDetector::BallDetector() param_command_sub_ = nh_.subscribe("param_command", 1, &BallDetector::paramCommandCallback, this); set_param_client_ = nh_.advertiseService("set_param", &BallDetector::setParamCallback, this); get_param_client_ = nh_.advertiseService("get_param", &BallDetector::getParamCallback, this); - default_setting_path_ = ros::package::getPath(ROS_PACKAGE_NAME) + "/launch/ball_detector_params_default.yaml"; + default_setting_path_ = ros::package::getPath(ROS_PACKAGE_NAME) + "/config/ball_detector_params_default.yaml"; //sets config and prints it params_config_ = detect_config; @@ -234,7 +233,7 @@ void BallDetector::imageCallback(const sensor_msgs::ImageConstPtr & msg) return; } -void BallDetector::dynParamCallback(ball_detector::detectorParamsConfig &config, uint32_t level) +void BallDetector::dynParamCallback(ball_detector::DetectorParamsConfig &config, uint32_t level) { params_config_.gaussian_blur_size = config.gaussian_blur_size; params_config_.gaussian_blur_sigma = config.gaussian_blur_sigma; diff --git a/op3_demo/CMakeLists.txt b/op3_demo/CMakeLists.txt index 4615615..1554f48 100644 --- a/op3_demo/CMakeLists.txt +++ b/op3_demo/CMakeLists.txt @@ -1,26 +1,51 @@ ################################################################################ -# CMake +# Set minimum required version of cmake, project name and compile options ################################################################################ cmake_minimum_required(VERSION 2.8.3) project(op3_demo) ################################################################################ -# Packages +# Find catkin packages and libraries for catkin and system dependencies ################################################################################ find_package(catkin REQUIRED COMPONENTS roscpp roslib + std_msgs sensor_msgs - ball_detector + geometry_msgs + robotis_controller_msgs op3_walking_module_msgs op3_action_module_msgs - robotis_controller_msgs cmake_modules robotis_math + ball_detector ) +find_package(Boost REQUIRED COMPONENTS thread) find_package(Eigen REQUIRED) +## Resolve system dependency on yaml-cpp, which apparently does not +## provide a CMake find_package() module. +## Insert your header file compatible specified path like '#include ' +find_package(PkgConfig REQUIRED) +pkg_check_modules(YAML_CPP REQUIRED yaml-cpp) +find_path(YAML_CPP_INCLUDE_DIR + NAMES yaml_cpp.h + PATHS ${YAML_CPP_INCLUDE_DIRS} +) +find_library(YAML_CPP_LIBRARY + NAMES YAML_CPP + PATHS ${YAML_CPP_LIBRARY_DIRS} +) +link_directories(${YAML_CPP_LIBRARY_DIRS}) + +if(NOT ${YAML_CPP_VERSION} VERSION_LESS "0.5") +add_definitions(-DHAVE_NEW_YAMLCPP) +endif(NOT ${YAML_CPP_VERSION} VERSION_LESS "0.5") + +################################################################################ +# Setup for python modules and scripts +################################################################################ ################################################################################ # Declare ROS messages, services and actions @@ -31,11 +56,23 @@ find_package(Eigen REQUIRED) ################################################################################ ################################################################################ -# Catkin specific configuration +# Declare catkin specific configuration to be passed to dependent projects ################################################################################ catkin_package( INCLUDE_DIRS include - CATKIN_DEPENDS roscpp sensor_msgs + CATKIN_DEPENDS + roscpp + roslib + std_msgs + sensor_msgs + geometry_msgs + robotis_controller_msgs + op3_walking_module_msgs + op3_action_module_msgs + cmake_modules + robotis_math + ball_detector + DEPENDS Boost EIGEN3 ) ################################################################################ @@ -44,7 +81,9 @@ catkin_package( include_directories( include ${catkin_INCLUDE_DIRS} - ${Eigen_INCLUDE_DIRS} + ${Boost_INCLUDE_DIRS} + ${EIGEN3_INCLUDE_DIRS} + ${YAML_CPP_INCLUDE_DIRS} ) add_executable(op_demo_node @@ -57,11 +96,16 @@ add_executable(op_demo_node src/vision/face_tracker.cpp ) -add_dependencies(op_demo_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) +add_dependencies(op_demo_node + ${${PROJECT_NAME}_EXPORTED_TARGETS} + ${catkin_EXPORTED_TARGETS} +) target_link_libraries(op_demo_node ${catkin_LIBRARIES} - yaml-cpp + ${Boost_LIBRARIES} + ${Eigen3_LIBRARIES} + ${YAML_CPP_LIBRARIES} ) add_executable(self_test_node @@ -76,47 +120,32 @@ add_executable(self_test_node src/test/mic_test.cpp ) -add_dependencies(self_test_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) +add_dependencies(self_test_node + ${${PROJECT_NAME}_EXPORTED_TARGETS} + ${catkin_EXPORTED_TARGETS} +) target_link_libraries(self_test_node ${catkin_LIBRARIES} - yaml-cpp + ${Boost_LIBRARIES} + ${Eigen3_LIBRARIES} + ${YAML_CPP_LIBRARIES} ) ################################################################################ # Install ################################################################################ +install(TARGETS op_demo_node self_test_node + RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +) -# all install targets should use catkin DESTINATION variables -# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html +install(DIRECTORY include/${PROJECT_NAME}/ + DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} +) -## Mark executable scripts (Python etc.) for installation -## in contrast to setup.py, you can choose the destination -# install(PROGRAMS -# scripts/my_python_script -# DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} -# ) - -## Mark executables and/or libraries for installation -# install(TARGETS ball_tracking ball_tracking_node -# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} -# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} -# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} -# ) - -## Mark cpp header files for installation -# install(DIRECTORY include/${PROJECT_NAME}/ -# DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} -# FILES_MATCHING PATTERN "*.h" -# PATTERN ".svn" EXCLUDE -# ) - -## Mark other files for installation (e.g. launch and bag files, etc.) -# install(FILES -# # myfile1 -# # myfile2 -# DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} -# ) +install(DIRECTORY data launch list + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} +) ################################################################################ # Test diff --git a/op3_demo/Data/mp3/Autonomous soccer mode.mp3 b/op3_demo/data/mp3/Autonomous soccer mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/Autonomous soccer mode.mp3 rename to op3_demo/data/mp3/Autonomous soccer mode.mp3 diff --git a/op3_demo/Data/mp3/Bye bye.mp3 b/op3_demo/data/mp3/Bye bye.mp3 similarity index 100% rename from op3_demo/Data/mp3/Bye bye.mp3 rename to op3_demo/data/mp3/Bye bye.mp3 diff --git a/op3_demo/Data/mp3/Clap please.mp3 b/op3_demo/data/mp3/Clap please.mp3 similarity index 100% rename from op3_demo/Data/mp3/Clap please.mp3 rename to op3_demo/data/mp3/Clap please.mp3 diff --git a/op3_demo/Data/mp3/Demonstration ready mode.mp3 b/op3_demo/data/mp3/Demonstration ready mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/Demonstration ready mode.mp3 rename to op3_demo/data/mp3/Demonstration ready mode.mp3 diff --git a/op3_demo/Data/mp3/Headstand.mp3 b/op3_demo/data/mp3/Headstand.mp3 similarity index 100% rename from op3_demo/Data/mp3/Headstand.mp3 rename to op3_demo/data/mp3/Headstand.mp3 diff --git a/op3_demo/Data/mp3/Interactive motion mode.mp3 b/op3_demo/data/mp3/Interactive motion mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/Interactive motion mode.mp3 rename to op3_demo/data/mp3/Interactive motion mode.mp3 diff --git a/op3_demo/Data/mp3/Intro01.mp3 b/op3_demo/data/mp3/Intro01.mp3 similarity index 100% rename from op3_demo/Data/mp3/Intro01.mp3 rename to op3_demo/data/mp3/Intro01.mp3 diff --git a/op3_demo/Data/mp3/Intro02.mp3 b/op3_demo/data/mp3/Intro02.mp3 similarity index 100% rename from op3_demo/Data/mp3/Intro02.mp3 rename to op3_demo/data/mp3/Intro02.mp3 diff --git a/op3_demo/Data/mp3/Intro03.mp3 b/op3_demo/data/mp3/Intro03.mp3 similarity index 100% rename from op3_demo/Data/mp3/Intro03.mp3 rename to op3_demo/data/mp3/Intro03.mp3 diff --git a/op3_demo/Data/mp3/Introduction.mp3 b/op3_demo/data/mp3/Introduction.mp3 similarity index 100% rename from op3_demo/Data/mp3/Introduction.mp3 rename to op3_demo/data/mp3/Introduction.mp3 diff --git a/op3_demo/Data/mp3/Left kick.mp3 b/op3_demo/data/mp3/Left kick.mp3 similarity index 100% rename from op3_demo/Data/mp3/Left kick.mp3 rename to op3_demo/data/mp3/Left kick.mp3 diff --git a/op3_demo/Data/mp3/No.mp3 b/op3_demo/data/mp3/No.mp3 similarity index 100% rename from op3_demo/Data/mp3/No.mp3 rename to op3_demo/data/mp3/No.mp3 diff --git a/op3_demo/Data/mp3/Oops.mp3 b/op3_demo/data/mp3/Oops.mp3 similarity index 100% rename from op3_demo/Data/mp3/Oops.mp3 rename to op3_demo/data/mp3/Oops.mp3 diff --git a/op3_demo/Data/mp3/Right kick.mp3 b/op3_demo/data/mp3/Right kick.mp3 similarity index 100% rename from op3_demo/Data/mp3/Right kick.mp3 rename to op3_demo/data/mp3/Right kick.mp3 diff --git a/op3_demo/Data/mp3/Sensor calibration complete.mp3 b/op3_demo/data/mp3/Sensor calibration complete.mp3 similarity index 100% rename from op3_demo/Data/mp3/Sensor calibration complete.mp3 rename to op3_demo/data/mp3/Sensor calibration complete.mp3 diff --git a/op3_demo/Data/mp3/Sensor calibration fail.mp3 b/op3_demo/data/mp3/Sensor calibration fail.mp3 similarity index 100% rename from op3_demo/Data/mp3/Sensor calibration fail.mp3 rename to op3_demo/data/mp3/Sensor calibration fail.mp3 diff --git a/op3_demo/Data/mp3/Shoot.mp3 b/op3_demo/data/mp3/Shoot.mp3 similarity index 100% rename from op3_demo/Data/mp3/Shoot.mp3 rename to op3_demo/data/mp3/Shoot.mp3 diff --git a/op3_demo/Data/mp3/Sit down.mp3 b/op3_demo/data/mp3/Sit down.mp3 similarity index 100% rename from op3_demo/Data/mp3/Sit down.mp3 rename to op3_demo/data/mp3/Sit down.mp3 diff --git a/op3_demo/Data/mp3/Stand up.mp3 b/op3_demo/data/mp3/Stand up.mp3 similarity index 100% rename from op3_demo/Data/mp3/Stand up.mp3 rename to op3_demo/data/mp3/Stand up.mp3 diff --git a/op3_demo/Data/mp3/Start motion demonstration.mp3 b/op3_demo/data/mp3/Start motion demonstration.mp3 similarity index 100% rename from op3_demo/Data/mp3/Start motion demonstration.mp3 rename to op3_demo/data/mp3/Start motion demonstration.mp3 diff --git a/op3_demo/Data/mp3/Start soccer demonstration.mp3 b/op3_demo/data/mp3/Start soccer demonstration.mp3 similarity index 100% rename from op3_demo/Data/mp3/Start soccer demonstration.mp3 rename to op3_demo/data/mp3/Start soccer demonstration.mp3 diff --git a/op3_demo/Data/mp3/Start vision processing demonstration.mp3 b/op3_demo/data/mp3/Start vision processing demonstration.mp3 similarity index 100% rename from op3_demo/Data/mp3/Start vision processing demonstration.mp3 rename to op3_demo/data/mp3/Start vision processing demonstration.mp3 diff --git a/op3_demo/Data/mp3/System shutdown.mp3 b/op3_demo/data/mp3/System shutdown.mp3 similarity index 100% rename from op3_demo/Data/mp3/System shutdown.mp3 rename to op3_demo/data/mp3/System shutdown.mp3 diff --git a/op3_demo/Data/mp3/Thank you.mp3 b/op3_demo/data/mp3/Thank you.mp3 similarity index 100% rename from op3_demo/Data/mp3/Thank you.mp3 rename to op3_demo/data/mp3/Thank you.mp3 diff --git a/op3_demo/Data/mp3/Vision processing mode.mp3 b/op3_demo/data/mp3/Vision processing mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/Vision processing mode.mp3 rename to op3_demo/data/mp3/Vision processing mode.mp3 diff --git a/op3_demo/Data/mp3/Wow.mp3 b/op3_demo/data/mp3/Wow.mp3 similarity index 100% rename from op3_demo/Data/mp3/Wow.mp3 rename to op3_demo/data/mp3/Wow.mp3 diff --git a/op3_demo/Data/mp3/Yes go.mp3 b/op3_demo/data/mp3/Yes go.mp3 similarity index 100% rename from op3_demo/Data/mp3/Yes go.mp3 rename to op3_demo/data/mp3/Yes go.mp3 diff --git a/op3_demo/Data/mp3/Yes.mp3 b/op3_demo/data/mp3/Yes.mp3 similarity index 100% rename from op3_demo/Data/mp3/Yes.mp3 rename to op3_demo/data/mp3/Yes.mp3 diff --git a/op3_demo/Data/mp3/intro_test.mp3 b/op3_demo/data/mp3/intro_test.mp3 similarity index 100% rename from op3_demo/Data/mp3/intro_test.mp3 rename to op3_demo/data/mp3/intro_test.mp3 diff --git a/op3_demo/Data/mp3/test/Announce mic test.mp3 b/op3_demo/data/mp3/test/Announce mic test.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Announce mic test.mp3 rename to op3_demo/data/mp3/test/Announce mic test.mp3 diff --git a/op3_demo/Data/mp3/test/Button test mode.mp3 b/op3_demo/data/mp3/test/Button test mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Button test mode.mp3 rename to op3_demo/data/mp3/test/Button test mode.mp3 diff --git a/op3_demo/Data/mp3/test/Mic test mode.mp3 b/op3_demo/data/mp3/test/Mic test mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Mic test mode.mp3 rename to op3_demo/data/mp3/test/Mic test mode.mp3 diff --git a/op3_demo/Data/mp3/test/Mode button long pressed.mp3 b/op3_demo/data/mp3/test/Mode button long pressed.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Mode button long pressed.mp3 rename to op3_demo/data/mp3/test/Mode button long pressed.mp3 diff --git a/op3_demo/Data/mp3/test/Mode button pressed.mp3 b/op3_demo/data/mp3/test/Mode button pressed.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Mode button pressed.mp3 rename to op3_demo/data/mp3/test/Mode button pressed.mp3 diff --git a/op3_demo/Data/mp3/test/Self test ready mode.mp3 b/op3_demo/data/mp3/test/Self test ready mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Self test ready mode.mp3 rename to op3_demo/data/mp3/test/Self test ready mode.mp3 diff --git a/op3_demo/Data/mp3/test/Start button long pressed.mp3 b/op3_demo/data/mp3/test/Start button long pressed.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Start button long pressed.mp3 rename to op3_demo/data/mp3/test/Start button long pressed.mp3 diff --git a/op3_demo/Data/mp3/test/Start button pressed.mp3 b/op3_demo/data/mp3/test/Start button pressed.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Start button pressed.mp3 rename to op3_demo/data/mp3/test/Start button pressed.mp3 diff --git a/op3_demo/Data/mp3/test/Start button test mode.mp3 b/op3_demo/data/mp3/test/Start button test mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Start button test mode.mp3 rename to op3_demo/data/mp3/test/Start button test mode.mp3 diff --git a/op3_demo/Data/mp3/test/Start mic test mode.mp3 b/op3_demo/data/mp3/test/Start mic test mode.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Start mic test mode.mp3 rename to op3_demo/data/mp3/test/Start mic test mode.mp3 diff --git a/op3_demo/Data/mp3/test/Start playing.mp3 b/op3_demo/data/mp3/test/Start playing.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Start playing.mp3 rename to op3_demo/data/mp3/test/Start playing.mp3 diff --git a/op3_demo/Data/mp3/test/Start recording.mp3 b/op3_demo/data/mp3/test/Start recording.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/Start recording.mp3 rename to op3_demo/data/mp3/test/Start recording.mp3 diff --git a/op3_demo/Data/mp3/test/User button long pressed.mp3 b/op3_demo/data/mp3/test/User button long pressed.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/User button long pressed.mp3 rename to op3_demo/data/mp3/test/User button long pressed.mp3 diff --git a/op3_demo/Data/mp3/test/User button pressed.mp3 b/op3_demo/data/mp3/test/User button pressed.mp3 similarity index 100% rename from op3_demo/Data/mp3/test/User button pressed.mp3 rename to op3_demo/data/mp3/test/User button pressed.mp3 diff --git a/op3_demo/include/op3_demo/action_demo.h b/op3_demo/include/op3_demo/action_demo.h index 32a9435..4231406 100644 --- a/op3_demo/include/op3_demo/action_demo.h +++ b/op3_demo/include/op3_demo/action_demo.h @@ -19,14 +19,14 @@ #ifndef ACTION_DEMO_H_ #define ACTION_DEMO_H_ -#include -#include - #include #include #include #include +#include +#include + #include "op3_demo/op_demo.h" #include "robotis_controller_msgs/JointCtrlModule.h" #include "robotis_controller_msgs/SetModule.h" diff --git a/op3_demo/include/op3_demo/ball_follower.h b/op3_demo/include/op3_demo/ball_follower.h index 9e12ffc..7ec1d46 100644 --- a/op3_demo/include/op3_demo/ball_follower.h +++ b/op3_demo/include/op3_demo/ball_follower.h @@ -20,16 +20,16 @@ #define BALL_FOLLOWER_H_ #include -#include - #include #include #include #include #include +#include +#include #include "robotis_controller_msgs/JointCtrlModule.h" -#include "ball_detector/circleSetStamped.h" +#include "ball_detector/CircleSetStamped.h" #include "op3_walking_module_msgs/WalkingParam.h" #include "op3_walking_module_msgs/GetWalkingParam.h" diff --git a/op3_demo/include/op3_demo/ball_tracker.h b/op3_demo/include/op3_demo/ball_tracker.h index 0d3cfac..5461494 100644 --- a/op3_demo/include/op3_demo/ball_tracker.h +++ b/op3_demo/include/op3_demo/ball_tracker.h @@ -20,17 +20,16 @@ #define BALL_TRACKING_H_ #include -#include - #include #include #include #include -//#include #include +#include +#include #include "robotis_controller_msgs/JointCtrlModule.h" -#include "ball_detector/circleSetStamped.h" +#include "ball_detector/CircleSetStamped.h" #include "op3_walking_module_msgs/WalkingParam.h" #include "op3_walking_module_msgs/GetWalkingParam.h" @@ -80,7 +79,7 @@ protected: const int WAITING_THRESHOLD; const bool DEBUG_PRINT; - void ballPositionCallback(const ball_detector::circleSetStamped::ConstPtr &msg); + void ballPositionCallback(const ball_detector::CircleSetStamped::ConstPtr &msg); void ballTrackerCommandCallback(const std_msgs::String::ConstPtr &msg); void publishHeadJoint(double pan, double tilt); void scanBall(); diff --git a/op3_demo/include/op3_demo/button_test.h b/op3_demo/include/op3_demo/button_test.h index 127c978..84e8bee 100644 --- a/op3_demo/include/op3_demo/button_test.h +++ b/op3_demo/include/op3_demo/button_test.h @@ -19,14 +19,12 @@ #ifndef BUTTON_TEST_H_ #define BUTTON_TEST_H_ -#include - #include #include #include +#include #include "op3_demo/op_demo.h" - #include "robotis_controller_msgs/SyncWriteItem.h" namespace robotis_op diff --git a/op3_demo/include/op3_demo/face_tracker.h b/op3_demo/include/op3_demo/face_tracker.h index 0671b24..3289375 100644 --- a/op3_demo/include/op3_demo/face_tracker.h +++ b/op3_demo/include/op3_demo/face_tracker.h @@ -20,8 +20,6 @@ #define FACE_TRACKING_H_ #include -#include - #include #include #include @@ -29,6 +27,7 @@ #include #include #include +#include namespace robotis_op { diff --git a/op3_demo/include/op3_demo/mic_test.h b/op3_demo/include/op3_demo/mic_test.h index 7cd025a..144fe96 100644 --- a/op3_demo/include/op3_demo/mic_test.h +++ b/op3_demo/include/op3_demo/mic_test.h @@ -20,14 +20,12 @@ #define MIC_TEST_H_ #include -#include - #include #include #include +#include #include "op3_demo/op_demo.h" - #include "robotis_controller_msgs/SyncWriteItem.h" namespace robotis_op diff --git a/op3_demo/include/op3_demo/soccer_demo.h b/op3_demo/include/op3_demo/soccer_demo.h index f65d81b..a771eda 100644 --- a/op3_demo/include/op3_demo/soccer_demo.h +++ b/op3_demo/include/op3_demo/soccer_demo.h @@ -23,15 +23,18 @@ #include #include #include +#include +#include + +#include "op3_action_module_msgs/IsRunning.h" +#include "robotis_controller_msgs/SyncWriteItem.h" +#include "robotis_controller_msgs/JointCtrlModule.h" +#include "robotis_controller_msgs/SetJointModule.h" #include "op3_demo/op_demo.h" #include "op3_demo/ball_tracker.h" #include "op3_demo/ball_follower.h" #include "robotis_math/robotis_linear_algebra.h" -#include "op3_action_module_msgs/IsRunning.h" -#include "robotis_controller_msgs/SyncWriteItem.h" -#include "robotis_controller_msgs/JointCtrlModule.h" -#include "robotis_controller_msgs/SetJointModule.h" namespace robotis_op { diff --git a/op3_demo/include/op3_demo/vision_demo.h b/op3_demo/include/op3_demo/vision_demo.h index 3ebdc46..20cd1ad 100644 --- a/op3_demo/include/op3_demo/vision_demo.h +++ b/op3_demo/include/op3_demo/vision_demo.h @@ -19,19 +19,18 @@ #ifndef VISION_DEMO_H_ #define VISION_DEMO_H_ -#include - #include #include #include #include - -#include "op3_demo/op_demo.h" -#include "op3_demo/face_tracker.h" +#include #include "robotis_controller_msgs/SyncWriteItem.h" #include "robotis_controller_msgs/SetModule.h" +#include "op3_demo/op_demo.h" +#include "op3_demo/face_tracker.h" + namespace robotis_op { diff --git a/op3_demo/launch/demo.launch b/op3_demo/launch/demo.launch index aa5098b..2b5281c 100644 --- a/op3_demo/launch/demo.launch +++ b/op3_demo/launch/demo.launch @@ -1,7 +1,5 @@ - - diff --git a/op3_demo/launch/face_detection_op3.launch b/op3_demo/launch/face_detection_op3.launch index afc5f12..d42ab41 100644 --- a/op3_demo/launch/face_detection_op3.launch +++ b/op3_demo/launch/face_detection_op3.launch @@ -7,16 +7,16 @@ - - - - + args="$(arg face_cascade_name_0) + $(arg face_cascade_name_1) + $(arg face_cascade_name_2) + $(arg face_cascade_name_3) + $(arg face_cascade_name_4)" + output="screen"> + + + + diff --git a/op3_demo/launch/self_test.launch b/op3_demo/launch/self_test.launch index c5ca857..623004e 100644 --- a/op3_demo/launch/self_test.launch +++ b/op3_demo/launch/self_test.launch @@ -1,30 +1,29 @@ + + - - - - - + + - - + + - - + + - - + + - - + + - - - - - - + + + + + + diff --git a/op3_demo/list/action_script.yaml b/op3_demo/list/action_script.yaml new file mode 100644 index 0000000..21ce72b --- /dev/null +++ b/op3_demo/list/action_script.yaml @@ -0,0 +1,23 @@ +# combination action page number and mp3 file path +action_and_sound: + 4 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Thank you.mp3" + 41: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Introduction.mp3" + 24: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Wow.mp3" + 23: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Yes go.mp3" + 15: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Sit down.mp3" + 1: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Stand up.mp3" + 54: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Clap please.mp3" + 27: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Oops.mp3" + 38: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Bye bye.mp3" +# 101 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Oops.mp3" + 110 : "" + 111 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Intro01.mp3" + 115 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Intro02.mp3" + 118 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Intro03.mp3" + +# play list +prev_default: [4, 41, 24, 23, 15, 1, 54, 27, 38] +default: [4, 110, 111, 115, 118, 24, 54, 27, 38] + +# example of play list +#certification: [101] \ No newline at end of file diff --git a/op3_demo/script/action_script_bk.yaml b/op3_demo/list/action_script_bk.yaml similarity index 72% rename from op3_demo/script/action_script_bk.yaml rename to op3_demo/list/action_script_bk.yaml index a18155d..bc401fb 100644 --- a/op3_demo/script/action_script_bk.yaml +++ b/op3_demo/list/action_script_bk.yaml @@ -1,15 +1,15 @@ # combination action page number and mp3 file path action_and_sound: - 4 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Thank you.mp3" - 41: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Introduction.mp3" - 24: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Wow.mp3" - 23: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Yes go.mp3" - 15: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Sit down.mp3" - 1: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Stand up.mp3" - 54: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Clap please.mp3" - 27: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Oops.mp3" - 38: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Bye bye.mp3" - 101 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Oops.mp3" + 4 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Thank you.mp3" + 41: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Introduction.mp3" + 24: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Wow.mp3" + 23: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Yes go.mp3" + 15: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Sit down.mp3" + 1: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Stand up.mp3" + 54: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Clap please.mp3" + 27: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Oops.mp3" + 38: "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Bye bye.mp3" + 101 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3/ROBOTIS-OP3-Demo/op3_demo/data/mp3/Oops.mp3" # play list default: [4, 41, 24, 23, 15, 1, 54, 27, 38] diff --git a/op3_demo/package.xml b/op3_demo/package.xml index 68baa53..85bd36e 100644 --- a/op3_demo/package.xml +++ b/op3_demo/package.xml @@ -1,32 +1,36 @@ - + op3_demo 0.1.0 - op3 default demo + OP3 default demo It includes three demontrations(soccer demo, vision demo, action script demo) - Apache License 2.0 - kayman + Apache 2.0 + Kayman Pyo - + http://wiki.ros.org/op3_demo + http://emanual.robotis.com/docs/en/platform/op3/introduction/ + https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Demo + https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Demo/issues catkin - roscpp - roslib - sensor_msgs - ball_detector - robotis_controller_msgs - op3_walking_module_msgs - op3_action_module_msgs - cmake_modules - robotis_math - roscpp - roslib - sensor_msgs - ball_detector - robotis_controller_msgs - op3_walking_module_msgs - op3_action_module_msgs - cmake_modules - robotis_math + roscpp + roslib + std_msgs + sensor_msgs + geometry_msgs + robotis_controller_msgs + op3_walking_module_msgs + op3_action_module_msgs + cmake_modules + robotis_math + ball_detector + boost + eigen + yaml-cpp + op3_manager + op3_camera_setting_tool + op3_web_setting_tool + ros_madplay_player + diff --git a/op3_demo/script/action_script.yaml b/op3_demo/script/action_script.yaml deleted file mode 100644 index 077e820..0000000 --- a/op3_demo/script/action_script.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# combination action page number and mp3 file path -action_and_sound: - 4 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Thank you.mp3" - 41: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Introduction.mp3" - 24: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Wow.mp3" - 23: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Yes go.mp3" - 15: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Sit down.mp3" - 1: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Stand up.mp3" - 54: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Clap please.mp3" - 27: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Oops.mp3" - 38: "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Bye bye.mp3" -# 101 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Oops.mp3" - 110 : "" - 111 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Intro01.mp3" - 115 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Intro02.mp3" - 118 : "/home/robotis/catkin_ws/src/ROBOTIS-OP3-Demo/op3_demo/Data/mp3/Intro03.mp3" - -# play list -prev_default: [4, 41, 24, 23, 15, 1, 54, 27, 38] -default: [4, 110, 111, 115, 118, 24, 54, 27, 38] - -# example of play list -#certification: [101] \ No newline at end of file diff --git a/op3_demo/src/action/action_demo.cpp b/op3_demo/src/action/action_demo.cpp index 4f14679..660390c 100644 --- a/op3_demo/src/action/action_demo.cpp +++ b/op3_demo/src/action/action_demo.cpp @@ -31,7 +31,7 @@ ActionDemo::ActionDemo() ros::NodeHandle nh(ros::this_node::getName()); - std::string default_path = ros::package::getPath("op3_demo") + "/script/action_script.yaml"; + std::string default_path = ros::package::getPath("op3_demo") + "/list/action_script.yaml"; script_path_ = nh.param("action_script", default_path); std::string default_play_list = "default"; diff --git a/op3_demo/src/demo_node.cpp b/op3_demo/src/demo_node.cpp index 8039aff..300a90b 100644 --- a/op3_demo/src/demo_node.cpp +++ b/op3_demo/src/demo_node.cpp @@ -77,7 +77,7 @@ int main(int argc, char **argv) ros::Subscriber buttuon_sub = nh.subscribe("/robotis/open_cr/button", 1, buttonHandlerCallback); ros::Subscriber mode_command_sub = nh.subscribe("/robotis/mode_command", 1, demoModeCommandCallback); - default_mp3_path = ros::package::getPath("op3_demo") + "/Data/mp3/"; + default_mp3_path = ros::package::getPath("op3_demo") + "/data/mp3/"; ros::start(); diff --git a/op3_demo/src/soccer/ball_tracker.cpp b/op3_demo/src/soccer/ball_tracker.cpp index cbd4e87..355a21c 100644 --- a/op3_demo/src/soccer/ball_tracker.cpp +++ b/op3_demo/src/soccer/ball_tracker.cpp @@ -59,7 +59,7 @@ BallTracker::~BallTracker() } -void BallTracker::ballPositionCallback(const ball_detector::circleSetStamped::ConstPtr &msg) +void BallTracker::ballPositionCallback(const ball_detector::CircleSetStamped::ConstPtr &msg) { for (int idx = 0; idx < msg->circles.size(); idx++) { diff --git a/op3_demo/src/test/button_test.cpp b/op3_demo/src/test/button_test.cpp index 415d182..7a78c6a 100644 --- a/op3_demo/src/test/button_test.cpp +++ b/op3_demo/src/test/button_test.cpp @@ -33,7 +33,7 @@ ButtonTest::ButtonTest() boost::thread queue_thread = boost::thread(boost::bind(&ButtonTest::callbackThread, this)); boost::thread process_thread = boost::thread(boost::bind(&ButtonTest::processThread, this)); - default_mp3_path_ = ros::package::getPath("op3_demo") + "/Data/mp3/test/"; + default_mp3_path_ = ros::package::getPath("op3_demo") + "/data/mp3/test/"; } ButtonTest::~ButtonTest() diff --git a/op3_demo/src/test/mic_test.cpp b/op3_demo/src/test/mic_test.cpp index e1f6757..4e56954 100644 --- a/op3_demo/src/test/mic_test.cpp +++ b/op3_demo/src/test/mic_test.cpp @@ -36,8 +36,8 @@ MicTest::MicTest() boost::thread queue_thread = boost::thread(boost::bind(&MicTest::callbackThread, this)); boost::thread process_thread = boost::thread(boost::bind(&MicTest::processThread, this)); - recording_file_name_ = ros::package::getPath("op3_demo") + "/Data/mp3/test/mic-test.wav"; - default_mp3_path_ = ros::package::getPath("op3_demo") + "/Data/mp3/test/"; + recording_file_name_ = ros::package::getPath("op3_demo") + "/data/mp3/test/mic-test.wav"; + default_mp3_path_ = ros::package::getPath("op3_demo") + "/data/mp3/test/"; start_time_ = ros::Time::now(); } diff --git a/op3_demo/src/test_node.cpp b/op3_demo/src/test_node.cpp index 259ea96..8d4768d 100644 --- a/op3_demo/src/test_node.cpp +++ b/op3_demo/src/test_node.cpp @@ -84,7 +84,7 @@ int main(int argc, char **argv) ros::Subscriber buttuon_sub = nh.subscribe("/robotis/open_cr/button", 1, buttonHandlerCallback); ros::Subscriber mode_command_sub = nh.subscribe("/robotis/mode_command", 1, demoModeCommandCallback); - default_mp3_path = ros::package::getPath("op3_demo") + "/Data/mp3/"; + default_mp3_path = ros::package::getPath("op3_demo") + "/data/mp3/"; ros::start(); diff --git a/robotis_op3_demo/CMakeLists.txt b/robotis_op3_demo/CMakeLists.txt index d88f653..b7e8eeb 100644 --- a/robotis_op3_demo/CMakeLists.txt +++ b/robotis_op3_demo/CMakeLists.txt @@ -1,4 +1,4 @@ cmake_minimum_required(VERSION 2.8.3) project(robotis_op3_demo) find_package(catkin REQUIRED) -catkin_metapackage() \ No newline at end of file +catkin_metapackage() diff --git a/robotis_op3_demo/package.xml b/robotis_op3_demo/package.xml index bba5f7c..7cf0810 100644 --- a/robotis_op3_demo/package.xml +++ b/robotis_op3_demo/package.xml @@ -1,24 +1,19 @@ - + robotis_op3_demo 0.1.0 ROS packages for the robotis_op3_demo (meta package) - - Apache License 2.0 + Apache 2.0 Kayman Pyo - - - - - + http://wiki.ros.org/robotis_op3_demo + http://emanual.robotis.com/docs/en/platform/op3/introduction/ + https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Demo + https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Demo/issues catkin - ball_detector - op3_demo - - - - + ball_detector + op3_demo + From afddde32825168337222375dadffcec2a04cf410 Mon Sep 17 00:00:00 2001 From: Pyo Date: Fri, 30 Mar 2018 22:22:47 +0900 Subject: [PATCH 3/7] refacoring to release --- ball_detector/CMakeLists.txt | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/ball_detector/CMakeLists.txt b/ball_detector/CMakeLists.txt index 647cfdd..052a5ca 100644 --- a/ball_detector/CMakeLists.txt +++ b/ball_detector/CMakeLists.txt @@ -19,6 +19,28 @@ find_package(catkin REQUIRED COMPONENTS message_generation ) +find_package(Boost REQUIRED COMPONENTS thread) +find_package(OpenCV REQUIRED) + +## Resolve system dependency on yaml-cpp, which apparently does not +## provide a CMake find_package() module. +## Insert your header file compatible specified path like '#include ' +find_package(PkgConfig REQUIRED) +pkg_check_modules(YAML_CPP REQUIRED yaml-cpp) +find_path(YAML_CPP_INCLUDE_DIR + NAMES yaml_cpp.h + PATHS ${YAML_CPP_INCLUDE_DIRS} +) +find_library(YAML_CPP_LIBRARY + NAMES YAML_CPP + PATHS ${YAML_CPP_LIBRARY_DIRS} +) +link_directories(${YAML_CPP_LIBRARY_DIRS}) + +if(NOT ${YAML_CPP_VERSION} VERSION_LESS "0.5") +add_definitions(-DHAVE_NEW_YAMLCPP) +endif(NOT ${YAML_CPP_VERSION} VERSION_LESS "0.5") + ################################################################################ # Setup for python modules and scripts ################################################################################ From e4da8aa4a47fda6c1e569518fe9d214c7967440e Mon Sep 17 00:00:00 2001 From: Pyo Date: Fri, 30 Mar 2018 22:51:01 +0900 Subject: [PATCH 4/7] refacoring to release --- .robotis_op3_demo.rosinstall | 1 + .travis.yml | 3 ++- ball_detector/CMakeLists.txt | 2 +- ball_detector/package.xml | 2 +- 4 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 .robotis_op3_demo.rosinstall diff --git a/.robotis_op3_demo.rosinstall b/.robotis_op3_demo.rosinstall new file mode 100644 index 0000000..96ed216 --- /dev/null +++ b/.robotis_op3_demo.rosinstall @@ -0,0 +1 @@ +- git: {local-name: robotis_op3_tools, uri: 'https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Tools.git', version: master} \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index cbc9951..9316a80 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,8 +18,9 @@ notifications: - pyo@robotis.com env: matrix: - - ROS_DISTRO=kinetic ROS_REPO=ros-shadow-fixed UPSTREAM_WORKSPACE=debian +# - ROS_DISTRO=kinetic ROS_REPO=ros-shadow-fixed UPSTREAM_WORKSPACE=debian # - ROS_DISTRO=kinetic ROS_REPO=ros-shadow-fixed UPSTREAM_WORKSPACE=debian OS_NAME=debian OS_CODE_NAME=jessie + - ROS_DISTRO=kinetic ROS_REPO=ros-shadow-fixed UPSTREAM_WORKSPACE=file $ROSINSTALL_FILENAME=".robotis_op3_demo.rosinstall" branches: only: - master diff --git a/ball_detector/CMakeLists.txt b/ball_detector/CMakeLists.txt index 052a5ca..d2acc5e 100644 --- a/ball_detector/CMakeLists.txt +++ b/ball_detector/CMakeLists.txt @@ -20,7 +20,7 @@ find_package(catkin REQUIRED COMPONENTS ) find_package(Boost REQUIRED COMPONENTS thread) -find_package(OpenCV REQUIRED) +find_package(OpenCV 3 REQUIRED) ## Resolve system dependency on yaml-cpp, which apparently does not ## provide a CMake find_package() module. diff --git a/ball_detector/package.xml b/ball_detector/package.xml index e383f47..52570a8 100644 --- a/ball_detector/package.xml +++ b/ball_detector/package.xml @@ -24,7 +24,7 @@ cv_bridge image_transport boost - opencv + opencv3 yaml-cpp message_generation message_runtime From 0b0581d29784de2fb16a3b1a4afa31a1c60ccbe9 Mon Sep 17 00:00:00 2001 From: Pyo Date: Fri, 30 Mar 2018 23:01:08 +0900 Subject: [PATCH 5/7] -added rosinstall for footstep_planner package --- .robotis_op3_demo.rosinstall | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.robotis_op3_demo.rosinstall b/.robotis_op3_demo.rosinstall index 96ed216..146fa30 100644 --- a/.robotis_op3_demo.rosinstall +++ b/.robotis_op3_demo.rosinstall @@ -1 +1,2 @@ -- git: {local-name: robotis_op3_tools, uri: 'https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Tools.git', version: master} \ No newline at end of file +- git: {local-name: robotis_op3_tools, uri: 'https://github.com/ROBOTIS-GIT/ROBOTIS-OP3-Tools.git', version: master} +- git: {local-name: humanoid_navigation, uri: 'https://github.com/ROBOTIS-GIT/humanoid_navigation.git', version: master} \ No newline at end of file From 21980c5f396fe0410dc61171f4d8b40951cd8246 Mon Sep 17 00:00:00 2001 From: Pyo Date: Fri, 30 Mar 2018 23:31:48 +0900 Subject: [PATCH 6/7] updated the CHANGELOG and version to release binary packages --- ball_detector/CHANGELOG.rst | 12 ++++++++++++ ball_detector/package.xml | 1 + op3_demo/CHANGELOG.rst | 12 ++++++++++++ op3_demo/CMakeLists.txt | 2 +- robotis_op3_demo/CHANGELOG.rst | 12 ++++++++++++ 5 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 ball_detector/CHANGELOG.rst create mode 100644 op3_demo/CHANGELOG.rst create mode 100644 robotis_op3_demo/CHANGELOG.rst diff --git a/ball_detector/CHANGELOG.rst b/ball_detector/CHANGELOG.rst new file mode 100644 index 0000000..5d3764c --- /dev/null +++ b/ball_detector/CHANGELOG.rst @@ -0,0 +1,12 @@ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Changelog for package ball_detector +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +0.1.0 (2018-03-30) +------------------ +* first release +* added launch files in order to move the camera setting to op3_camera_setting package +* added missing package in find_package() +* refacoring to release +* splited repositoryfrom ROBOTIS-OP3 +* Contributors: Kayman, Zerom, Pyo diff --git a/ball_detector/package.xml b/ball_detector/package.xml index 52570a8..2f2acf3 100644 --- a/ball_detector/package.xml +++ b/ball_detector/package.xml @@ -9,6 +9,7 @@ Apache 2.0 Kayman + Zerom Pyo http://wiki.ros.org/ball_detector http://emanual.robotis.com/docs/en/platform/op3/introduction/ diff --git a/op3_demo/CHANGELOG.rst b/op3_demo/CHANGELOG.rst new file mode 100644 index 0000000..62ead4d --- /dev/null +++ b/op3_demo/CHANGELOG.rst @@ -0,0 +1,12 @@ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Changelog for package op3_demo +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +0.1.0 (2018-03-30) +------------------ +* first release +* added launch files in order to move the camera setting to op3_camera_setting package +* added missing package in find_package() +* refacoring to release +* splited repositoryfrom ROBOTIS-OP3 +* Contributors: Kayman, Yoshimaru Tanaka, Pyo diff --git a/op3_demo/CMakeLists.txt b/op3_demo/CMakeLists.txt index 1554f48..42445a0 100644 --- a/op3_demo/CMakeLists.txt +++ b/op3_demo/CMakeLists.txt @@ -22,7 +22,7 @@ find_package(catkin REQUIRED COMPONENTS ) find_package(Boost REQUIRED COMPONENTS thread) -find_package(Eigen REQUIRED) +find_package(Eigen3 REQUIRED) ## Resolve system dependency on yaml-cpp, which apparently does not ## provide a CMake find_package() module. diff --git a/robotis_op3_demo/CHANGELOG.rst b/robotis_op3_demo/CHANGELOG.rst new file mode 100644 index 0000000..b65724b --- /dev/null +++ b/robotis_op3_demo/CHANGELOG.rst @@ -0,0 +1,12 @@ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Changelog for package robotis_op3_demo +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +0.1.0 (2018-03-30) +------------------ +* first release +* added launch files in order to move the camera setting to op3_camera_setting package +* added missing package in find_package() +* refacoring to release +* splited repositoryfrom ROBOTIS-OP3 +* Contributors: Kayman, Zerom, Yoshimaru Tanaka, Pyo From 014a28cd8f1118d94c153343a93c0878fe39cc84 Mon Sep 17 00:00:00 2001 From: Pyo Date: Mon, 2 Apr 2018 08:25:00 +0900 Subject: [PATCH 7/7] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2387548..51875b9 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -## ROBOTIS OP3 +# ROBOTIS OP3 ## ROS Packages for ROBOTIS OP3 Demo