diff --git a/CMakeLists.txt b/CMakeLists.txt index 2fc69c758823727a4658be7d2a5e197eae52f8a8..c9588a69452db72c524d191a3990f27aee8fed25 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,9 +8,9 @@ project(intro_package) ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) ## is used, also find other catkin packages find_package(catkin REQUIRED COMPONENTS - roscpp - rospy - std_msgs + roscpp + std_msgs + moveit_ros_planning_interface ) ## System dependencies are found with CMake's conventions @@ -133,22 +133,20 @@ include_directories( ## Declare a C++ executable ## With catkin_make all packages are built within a single CMake context ## The recommended prefix ensures that target names across packages don't collide -add_executable(${PROJECT_NAME}_intro_package src/intro_package.cpp) +add_executable(IntroPackage src/IntroPackage.cpp) ## Rename C++ executable without prefix ## The above recommended prefix causes long target names, the following renames the ## target back to the shorter version for ease of user use ## e.g. "rosrun someones_pkg node" instead of "rosrun someones_pkg someones_pkg_node" -set_target_properties(${PROJECT_NAME}_intro_package PROPERTIES OUTPUT_NAME intro_package PREFIX "") +# set_target_properties(${PROJECT_NAME}_intro_package PROPERTIES OUTPUT_NAME intro_package PREFIX "") ## Add cmake target dependencies of the executable ## same as for the library above # add_dependencies(${PROJECT_NAME}_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) ## Specify libraries to link a library or executable target against -target_link_libraries(${PROJECT_NAME}_intro_package - ${catkin_LIBRARIES} -) +target_link_libraries(IntroPackage ${catkin_LIBRARIES}) ############# ## Install ## diff --git a/launch/intro_package.launch b/launch/intro_package.launch new file mode 100644 index 0000000000000000000000000000000000000000..09d164e7a62a0ecbb730d7edbe2f01cdb70c3da2 --- /dev/null +++ b/launch/intro_package.launch @@ -0,0 +1,9 @@ +<launch> + + <include file="$(find panda_simulation)/launch/simulation.launch"/> + + <include file="$(find panda_moveit_config)/launch/moveit_rviz.launch" /> + + <node pkg="intro_package" type="IntroPackage" name="IntroPackageInstance" respawn="false" output="screen"/> + +</launch> \ No newline at end of file diff --git a/package.xml b/package.xml index 8df6c8fcda5c1416d204b417345dc2aea8142dd7..cdee73a19eedb1c4a769f7090506937e0802a0d6 100644 --- a/package.xml +++ b/package.xml @@ -1,13 +1,13 @@ <?xml version="1.0"?> <package format="2"> <name>intro_package</name> - <version>0.0.0</version> + <version>0.0.1</version> <description>The intro_package package</description> <!-- One maintainer tag required, multiple allowed, one person per tag --> <!-- Example: --> <!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> --> - <maintainer email="tidenhub@todo.todo">tidenhub</maintainer> + <maintainer email="david.tiede@mailbox.tu-dresden.de">David Tiede</maintainer> <!-- One license tag required, multiple allowed, one license per tag --> @@ -49,16 +49,9 @@ <!-- Use doc_depend for packages you need only for building documentation: --> <!-- <doc_depend>doxygen</doc_depend> --> <buildtool_depend>catkin</buildtool_depend> - <build_depend>roscpp</build_depend> - <build_depend>rospy</build_depend> - <build_depend>std_msgs</build_depend> - <build_export_depend>roscpp</build_export_depend> - <build_export_depend>rospy</build_export_depend> - <build_export_depend>std_msgs</build_export_depend> - <exec_depend>roscpp</exec_depend> - <exec_depend>rospy</exec_depend> - <exec_depend>std_msgs</exec_depend> + <depend>roscpp</depend> + <depend>std_msgs</depend> <!-- The export tag contains other, unspecified, tags --> <export> diff --git a/src/IntroPackage.cpp b/src/IntroPackage.cpp new file mode 100644 index 0000000000000000000000000000000000000000..29a21ae94a1faba0e611bf47375e9e0d8af62dc6 --- /dev/null +++ b/src/IntroPackage.cpp @@ -0,0 +1,39 @@ +#include <moveit/move_group_interface/move_group_interface.h> + + +int main(int argc, char** argv) +{ + ros::init(argc, argv, "intro_package"); + ros::NodeHandle node_handle; + ros::AsyncSpinner spinner(1); + spinner.start(); + + static const std::string PLANNING_GROUP = "panda_arm"; + moveit::planning_interface::MoveGroupInterface group(PLANNING_GROUP); + + ros::Duration(3.0).sleep(); + + group.setStartStateToCurrentState(); + group.setPlanningTime(5.0); + + std::vector<geometry_msgs::Pose> waypoints; + + geometry_msgs::Pose start_pose = group.getCurrentPose().pose; + geometry_msgs::Pose target_pose_1 = group.getCurrentPose().pose; + + target_pose_1.position.z = 0.6; + target_pose_1.position.y = -0.6; + target_pose_1.position.x = 0; + waypoints.push_back(target_pose_1); + + moveit::planning_interface::MoveGroupInterface::Plan plan; + moveit_msgs::RobotTrajectory trajectory_msg; + group.computeCartesianPath(waypoints, 0.01, 0.0, trajectory_msg, true); + plan.trajectory_ = trajectory_msg; + + group.execute(plan); + ROS_INFO("FINISHED"); + + ros::shutdown(); + return 0; +} diff --git a/src/intro_package.cpp b/src/intro_package.cpp deleted file mode 100644 index adfd6a4e3f0655f94ddea101f1c6ffbfcdaaccfb..0000000000000000000000000000000000000000 --- a/src/intro_package.cpp +++ /dev/null @@ -1,10 +0,0 @@ -#include <ros/ros.h> - -int main(int argc, char** argv) -{ - ros::init(argc, argv, "intro_package_node"); - ros::NodeHandle node_handle("intro_package_ns"); - - ROS_INFO("HELLO WORLD"); -} -