diff --git a/CMakeLists.txt b/CMakeLists.txt index e63f68f..fe9844e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -92,15 +92,16 @@ add_library(ur_rtde_driver src/rtde/rtde_package.cpp src/rtde/text_message.cpp src/rtde/rtde_client.cpp + src/ur/ur_driver.cpp ) target_link_libraries(ur_rtde_driver ${catkin_LIBRARIES}) add_dependencies(ur_rtde_driver ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) -add_executable(producer - src/producer.cpp +add_executable(plain_driver + src/main_plain_driver.cpp ) -target_link_libraries(producer ${catkin_LIBRARIES} ur_rtde_driver) -add_dependencies(producer ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) +target_link_libraries(plain_driver ${catkin_LIBRARIES} ur_rtde_driver) +add_dependencies(plain_driver ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS}) install(TARGETS ur_rtde_driver ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} diff --git a/include/ur_rtde_driver/ur/ur_driver.h b/include/ur_rtde_driver/ur/ur_driver.h new file mode 100644 index 0000000..4da7fac --- /dev/null +++ b/include/ur_rtde_driver/ur/ur_driver.h @@ -0,0 +1,42 @@ +// this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*- + +// -- BEGIN LICENSE BLOCK ---------------------------------------------- +// Copyright 2019 FZI Forschungszentrum Informatik +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// -- END LICENSE BLOCK ------------------------------------------------ + +//---------------------------------------------------------------------- +/*!\file + * + * \author Felix Mauch mauch@fzi.de + * \date 2019-04-11 + * + */ +//---------------------------------------------------------------------- + + +#include "ur_rtde_driver/rtde/rtde_client.h" + +namespace ur_driver{ + class UrDriver + { + public: + UrDriver (const std::string& ROBOT_IP); + virtual ~UrDriver () = default; + + private: + comm::INotifier notifier_; + std::unique_ptr rtde_client_; + }; +} diff --git a/src/main_plain_driver.cpp b/src/main_plain_driver.cpp new file mode 100644 index 0000000..5ad0510 --- /dev/null +++ b/src/main_plain_driver.cpp @@ -0,0 +1,36 @@ +// this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*- + +// -- BEGIN LICENSE BLOCK ---------------------------------------------- +// -- END LICENSE BLOCK ------------------------------------------------ + +//---------------------------------------------------------------------- +/*!\file + * + * \author Felix Mauch mauch@fzi.de + * \date 2019-04-11 + * + */ +//---------------------------------------------------------------------- + +#include + +using namespace ur_driver; + +int main(int argc, char *argv[]) +{ + std::string ROBOT_IP = "192.168.56.101"; + + if (argc > 1) + { + ROBOT_IP = argv[1]; + } + + UrDriver driver(ROBOT_IP); + + while (true) + { + sleep(1); + // LOG_INFO("Still running"); + } + return 0; +} diff --git a/src/ur/ur_driver.cpp b/src/ur/ur_driver.cpp new file mode 100644 index 0000000..f090863 --- /dev/null +++ b/src/ur/ur_driver.cpp @@ -0,0 +1,38 @@ +// this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*- + +// -- BEGIN LICENSE BLOCK ---------------------------------------------- +// Copyright 2019 FZI Forschungszentrum Informatik +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// -- END LICENSE BLOCK ------------------------------------------------ + +//---------------------------------------------------------------------- +/*!\file + * + * \author Felix Mauch mauch@fzi.de + * \date 2019-04-11 + * + */ +//---------------------------------------------------------------------- + +#include "ur_rtde_driver/ur/ur_driver.h" +#include + +namespace ur_driver{ + + ur_driver::UrDriver::UrDriver (const std::string& ROBOT_IP) + { + rtde_client_.reset(new rtde_interface::RTDEClient(ROBOT_IP, notifier_)); + } + +}