diff --git a/.gitignore b/.gitignore
index 7fe44418..0382a3e3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,4 @@
.DS_Store
.idea
.vscode/
-*~
+tutorials/pick_and_place/PickAndPlaceProject/Packages/packages-lock.json
diff --git a/tutorials/pick_and_place/PickAndPlaceProject/.gitignore b/tutorials/pick_and_place/PickAndPlaceProject/.gitignore
index 72c27e4f..c3af38f1 100644
--- a/tutorials/pick_and_place/PickAndPlaceProject/.gitignore
+++ b/tutorials/pick_and_place/PickAndPlaceProject/.gitignore
@@ -15,7 +15,7 @@
/[Mm]emoryCaptures/
# Asset meta data should only be ignored when the corresponding asset is also ignored
-!/[Aa]ssets/**/*.meta
+# !/[Aa]ssets/**/*.meta
# Uncomment this line if you wish to ignore the asset store tools plugin
# /[Aa]ssets/AssetStoreTools*
diff --git a/tutorials/pick_and_place/PickAndPlaceProject/Packages/manifest.json b/tutorials/pick_and_place/PickAndPlaceProject/Packages/manifest.json
index 569b7897..20a48000 100644
--- a/tutorials/pick_and_place/PickAndPlaceProject/Packages/manifest.json
+++ b/tutorials/pick_and_place/PickAndPlaceProject/Packages/manifest.json
@@ -5,7 +5,7 @@
"com.unity.ide.visualstudio": "2.0.3",
"com.unity.ide.vscode": "1.2.2",
"com.unity.robotics.urdf-importer": "https://github.com/Unity-Technologies/URDF-Importer.git#v0.0.4",
- "com.unity.robotics.ros-tcp-connector": "https://github.com/Unity-Technologies/ROS-TCP-Connector.git#v0.0.3",
+ "com.unity.robotics.ros-tcp-connector": "https://github.com/Unity-Technologies/ROS-TCP-Connector.git#v0.1.1",
"com.unity.test-framework": "1.1.18",
"com.unity.textmeshpro": "3.0.1",
"com.unity.timeline": "1.4.3",
diff --git a/tutorials/pick_and_place/PickAndPlaceProject/Packages/packages-lock.json b/tutorials/pick_and_place/PickAndPlaceProject/Packages/packages-lock.json
deleted file mode 100644
index a598e109..00000000
--- a/tutorials/pick_and_place/PickAndPlaceProject/Packages/packages-lock.json
+++ /dev/null
@@ -1,350 +0,0 @@
-{
- "dependencies": {
- "com.unity.collab-proxy": {
- "version": "1.3.9",
- "depth": 0,
- "source": "registry",
- "dependencies": {},
- "url": "https://packages.unity.com"
- },
- "com.unity.ext.nunit": {
- "version": "1.0.0",
- "depth": 1,
- "source": "registry",
- "dependencies": {},
- "url": "https://packages.unity.com"
- },
- "com.unity.ide.rider": {
- "version": "2.0.7",
- "depth": 0,
- "source": "registry",
- "dependencies": {
- "com.unity.test-framework": "1.1.1"
- },
- "url": "https://packages.unity.com"
- },
- "com.unity.ide.visualstudio": {
- "version": "2.0.3",
- "depth": 0,
- "source": "registry",
- "dependencies": {},
- "url": "https://packages.unity.com"
- },
- "com.unity.ide.vscode": {
- "version": "1.2.2",
- "depth": 0,
- "source": "registry",
- "dependencies": {},
- "url": "https://packages.unity.com"
- },
- "com.unity.robotics.ros-tcp-connector": {
- "version": "https://github.com/Unity-Technologies/ROS-TCP-Connector.git#v0.0.3",
- "depth": 0,
- "source": "git",
- "dependencies": {},
- "hash": "251c159b0a4bab0950c43e6a3be4524876d2549f"
- },
- "com.unity.robotics.urdf-importer": {
- "version": "https://github.com/Unity-Technologies/URDF-Importer.git#v0.0.4",
- "depth": 0,
- "source": "git",
- "dependencies": {},
- "hash": "ca9f90f7d3fda94747e4dd4fa9702e6799af938e"
- },
- "com.unity.test-framework": {
- "version": "1.1.18",
- "depth": 0,
- "source": "registry",
- "dependencies": {
- "com.unity.ext.nunit": "1.0.0",
- "com.unity.modules.imgui": "1.0.0",
- "com.unity.modules.jsonserialize": "1.0.0"
- },
- "url": "https://packages.unity.com"
- },
- "com.unity.textmeshpro": {
- "version": "3.0.1",
- "depth": 0,
- "source": "registry",
- "dependencies": {
- "com.unity.ugui": "1.0.0"
- },
- "url": "https://packages.unity.com"
- },
- "com.unity.timeline": {
- "version": "1.4.3",
- "depth": 0,
- "source": "registry",
- "dependencies": {
- "com.unity.modules.director": "1.0.0",
- "com.unity.modules.animation": "1.0.0",
- "com.unity.modules.audio": "1.0.0",
- "com.unity.modules.particlesystem": "1.0.0"
- },
- "url": "https://packages.unity.com"
- },
- "com.unity.ugui": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.ui": "1.0.0",
- "com.unity.modules.imgui": "1.0.0"
- }
- },
- "com.unity.modules.ai": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.androidjni": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.animation": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.assetbundle": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.audio": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.cloth": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.physics": "1.0.0"
- }
- },
- "com.unity.modules.director": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.audio": "1.0.0",
- "com.unity.modules.animation": "1.0.0"
- }
- },
- "com.unity.modules.imageconversion": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.imgui": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.jsonserialize": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.particlesystem": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.physics": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.physics2d": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.screencapture": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.imageconversion": "1.0.0"
- }
- },
- "com.unity.modules.subsystems": {
- "version": "1.0.0",
- "depth": 1,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.jsonserialize": "1.0.0"
- }
- },
- "com.unity.modules.terrain": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.terrainphysics": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.physics": "1.0.0",
- "com.unity.modules.terrain": "1.0.0"
- }
- },
- "com.unity.modules.tilemap": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.physics2d": "1.0.0"
- }
- },
- "com.unity.modules.ui": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.uielements": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.ui": "1.0.0",
- "com.unity.modules.imgui": "1.0.0",
- "com.unity.modules.jsonserialize": "1.0.0",
- "com.unity.modules.uielementsnative": "1.0.0"
- }
- },
- "com.unity.modules.uielementsnative": {
- "version": "1.0.0",
- "depth": 1,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.ui": "1.0.0",
- "com.unity.modules.imgui": "1.0.0",
- "com.unity.modules.jsonserialize": "1.0.0"
- }
- },
- "com.unity.modules.umbra": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.unityanalytics": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.unitywebrequest": "1.0.0",
- "com.unity.modules.jsonserialize": "1.0.0"
- }
- },
- "com.unity.modules.unitywebrequest": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.unitywebrequestassetbundle": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.assetbundle": "1.0.0",
- "com.unity.modules.unitywebrequest": "1.0.0"
- }
- },
- "com.unity.modules.unitywebrequestaudio": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.unitywebrequest": "1.0.0",
- "com.unity.modules.audio": "1.0.0"
- }
- },
- "com.unity.modules.unitywebrequesttexture": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.unitywebrequest": "1.0.0",
- "com.unity.modules.imageconversion": "1.0.0"
- }
- },
- "com.unity.modules.unitywebrequestwww": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.unitywebrequest": "1.0.0",
- "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
- "com.unity.modules.unitywebrequestaudio": "1.0.0",
- "com.unity.modules.audio": "1.0.0",
- "com.unity.modules.assetbundle": "1.0.0",
- "com.unity.modules.imageconversion": "1.0.0"
- }
- },
- "com.unity.modules.vehicles": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.physics": "1.0.0"
- }
- },
- "com.unity.modules.video": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.audio": "1.0.0",
- "com.unity.modules.ui": "1.0.0",
- "com.unity.modules.unitywebrequest": "1.0.0"
- }
- },
- "com.unity.modules.vr": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.jsonserialize": "1.0.0",
- "com.unity.modules.physics": "1.0.0",
- "com.unity.modules.xr": "1.0.0"
- }
- },
- "com.unity.modules.wind": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {}
- },
- "com.unity.modules.xr": {
- "version": "1.0.0",
- "depth": 0,
- "source": "builtin",
- "dependencies": {
- "com.unity.modules.physics": "1.0.0",
- "com.unity.modules.jsonserialize": "1.0.0",
- "com.unity.modules.subsystems": "1.0.0"
- }
- }
- }
-}
diff --git a/tutorials/pick_and_place/ROS/src/niryo_moveit/CMakeLists.txt b/tutorials/pick_and_place/ROS/src/niryo_moveit/CMakeLists.txt
index 8ee0d33e..10110e42 100644
--- a/tutorials/pick_and_place/ROS/src/niryo_moveit/CMakeLists.txt
+++ b/tutorials/pick_and_place/ROS/src/niryo_moveit/CMakeLists.txt
@@ -1,18 +1,11 @@
cmake_minimum_required(VERSION 3.0.2)
project(niryo_moveit)
-## Compile as C++11, supported in ROS Kinetic and newer
-# add_compile_options(-std=c++11)
-
-## Find catkin macros and libraries
-## 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
geometry_msgs
- tcp_endpoint
+ ros_tcp_endpoint
message_generation
moveit_msgs
sensor_msgs
@@ -22,59 +15,10 @@ find_package(catkin REQUIRED COMPONENTS
)
roslaunch_add_file_check(launch)
-## System dependencies are found with CMake's conventions
-# find_package(Boost REQUIRED COMPONENTS system)
-
-## Uncomment this if the package has a setup.py. This macro ensures
-## modules and global scripts declared therein get installed
-## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html
-# catkin_python_setup()
-
-################################################
-## Declare ROS messages, services and actions ##
-################################################
-
-## To declare and build messages, services or actions from within this
-## package, follow these steps:
-## * Let MSG_DEP_SET be the set of packages whose message types you use in
-## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
-## * In the file package.xml:
-## * add a build_depend tag for "message_generation"
-## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET
-## * If MSG_DEP_SET isn't empty the following dependency has been pulled in
-## but can be declared for certainty nonetheless:
-## * add a exec_depend tag for "message_runtime"
-## * In this file (CMakeLists.txt):
-## * add "message_generation" and every package in MSG_DEP_SET to
-## find_package(catkin REQUIRED COMPONENTS ...)
-## * add "message_runtime" and every package in MSG_DEP_SET to
-## catkin_package(CATKIN_DEPENDS ...)
-## * uncomment the add_*_files sections below as needed
-## and list every .msg/.srv/.action file to be processed
-## * uncomment the generate_messages entry below
-## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)
-
-## Generate messages in the 'msg' folder
-add_message_files(
- FILES
- NiryoMoveitJoints.msg
- NiryoTrajectory.msg
-)
-
-## Generate services in the 'srv' folder
-add_service_files(
- FILES
- MoverService.srv
-)
+add_message_files(DIRECTORY msg)
-## Generate actions in the 'action' folder
-# add_action_files(
-# FILES
-# Action1.action
-# Action2.action
-# )
+add_service_files(DIRECTORY srv)
-## Generate added messages and services with any dependencies listed here
generate_messages(
DEPENDENCIES
geometry_msgs
@@ -83,92 +27,8 @@ generate_messages(
sensor_msgs
)
-################################################
-## Declare ROS dynamic reconfigure parameters ##
-################################################
-
-## To declare and build dynamic reconfigure parameters within this
-## package, follow these steps:
-## * In the file package.xml:
-## * add a build_depend and a exec_depend tag for "dynamic_reconfigure"
-## * In this file (CMakeLists.txt):
-## * add "dynamic_reconfigure" to
-## find_package(catkin REQUIRED COMPONENTS ...)
-## * uncomment the "generate_dynamic_reconfigure_options" section below
-## and list every .cfg file to be processed
-
-## Generate dynamic reconfigure parameters in the 'cfg' folder
-# generate_dynamic_reconfigure_options(
-# cfg/DynReconf1.cfg
-# cfg/DynReconf2.cfg
-# )
-
-###################################
-## catkin specific configuration ##
-###################################
-## The catkin_package macro generates cmake config files for your package
-## Declare things to be passed to dependent projects
-## INCLUDE_DIRS: uncomment this if your package contains header files
-## LIBRARIES: libraries you create in this project that dependent projects also need
-## CATKIN_DEPENDS: catkin_packages dependent projects also need
-## DEPENDS: system dependencies of this project that dependent projects also need
-catkin_package(
-# INCLUDE_DIRS include
-# LIBRARIES niryo_moveit
-# CATKIN_DEPENDS rospy std_msgs
-# DEPENDS system_lib
-)
-
-###########
-## Build ##
-###########
-
-## Specify additional locations of header files
-## Your package locations should be listed before other locations
-include_directories(
-# include
- ${catkin_INCLUDE_DIRS}
-)
+catkin_package()
-## Declare a C++ library
-# add_library(${PROJECT_NAME}
-# src/${PROJECT_NAME}/niryo_moveit.cpp
-# )
-
-## Add cmake target dependencies of the library
-## as an example, code may need to be generated before libraries
-## either from message generation or dynamic reconfigure
-# add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
-
-## 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}_node src/niryo_moveit_node.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}_node PROPERTIES OUTPUT_NAME node 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}_node
-# ${catkin_LIBRARIES}
-# )
-
-#############
-## Install ##
-#############
-
-# all install targets should use catkin DESTINATION variables
-# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html
-
-## Mark executable scripts (Python etc.) for installation
-## in contrast to setup.py, you can choose the destination
catkin_install_python(PROGRAMS
scripts/mover.py
scripts/server_endpoint.py
@@ -176,35 +36,6 @@ catkin_install_python(PROGRAMS
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
-## Mark executables for installation
-## See http://docs.ros.org/melodic/api/catkin/html/howto/format1/building_executables.html
-# install(TARGETS ${PROJECT_NAME}_node
-# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
-# )
-
-## Mark libraries for installation
-## See http://docs.ros.org/melodic/api/catkin/html/howto/format1/building_libraries.html
-# install(TARGETS ${PROJECT_NAME}
-# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
-# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
-# RUNTIME DESTINATION ${CATKIN_GLOBAL_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}
-# )
-
-# FROM panda MoveIt tutorial repo
install(DIRECTORY launch DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
PATTERN "setup_assistant.launch" EXCLUDE)
install(DIRECTORY config DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})
diff --git a/tutorials/pick_and_place/ROS/src/niryo_moveit/package.xml b/tutorials/pick_and_place/ROS/src/niryo_moveit/package.xml
index d2afcb44..be63b778 100644
--- a/tutorials/pick_and_place/ROS/src/niryo_moveit/package.xml
+++ b/tutorials/pick_and_place/ROS/src/niryo_moveit/package.xml
@@ -5,34 +5,31 @@
The niryo_moveit package
- unity
+ Unity Robotics
- TODO
+ Apache 2.0
message_generation
message_runtime
catkin
- roscpp
rospy
std_msgs
geometry_msgs
- tcp_endpoint
+ ros_tcp_endpoint
moveit_msgs
sensor_msgs
controller_manager
roslaunch
- roscpp
rospy
std_msgs
geometry_msgs
- tcp_endpoint
- roscpp
+ ros_tcp_endpoint
rospy
std_msgs
geometry_msgs
- tcp_endpoint
+ ros_tcp_endpoint
moveit_ros_move_group
diff --git a/tutorials/pick_and_place/ROS/src/niryo_moveit/scripts/server_endpoint.py b/tutorials/pick_and_place/ROS/src/niryo_moveit/scripts/server_endpoint.py
index a2fb1f9c..53674b09 100755
--- a/tutorials/pick_and_place/ROS/src/niryo_moveit/scripts/server_endpoint.py
+++ b/tutorials/pick_and_place/ROS/src/niryo_moveit/scripts/server_endpoint.py
@@ -2,17 +2,15 @@
import rospy
-from tcp_endpoint.RosTCPServer import TCPServer
-from tcp_endpoint.RosPublisher import RosPublisher
-from tcp_endpoint.RosSubscriber import RosSubscriber
-from tcp_endpoint.RosService import RosService
+from ros_tcp_endpoint import TcpServer, RosPublisher, RosSubscriber, RosService
from niryo_moveit.msg import NiryoMoveitJoints, NiryoTrajectory
from niryo_moveit.srv import MoverService
+
def main():
ros_node_name = rospy.get_param("/TCP_NODE_NAME", 'TCPServer')
- tcp_server = TCPServer(ros_node_name)
+ tcp_server = TcpServer(ros_node_name)
# Create ROS communication objects dictionary for routing messages
tcp_server.source_destination_dict = {
diff --git a/tutorials/pick_and_place/ROS/src/ros_tcp_endpoint b/tutorials/pick_and_place/ROS/src/ros_tcp_endpoint
index 68ade1cc..8a1dde63 160000
--- a/tutorials/pick_and_place/ROS/src/ros_tcp_endpoint
+++ b/tutorials/pick_and_place/ROS/src/ros_tcp_endpoint
@@ -1 +1 @@
-Subproject commit 68ade1ccc078e9cfb090e2eeeeb62a2a8c394a9c
+Subproject commit 8a1dde63f655bfa3a1c892c6e15ccae64f6c53a6
diff --git a/tutorials/pick_and_place/docker/Dockerfile b/tutorials/pick_and_place/docker/Dockerfile
index 2e269e40..73d994ad 100644
--- a/tutorials/pick_and_place/docker/Dockerfile
+++ b/tutorials/pick_and_place/docker/Dockerfile
@@ -16,6 +16,8 @@ COPY ./ROS/src/ros_tcp_endpoint $ROS_WORKSPACE/src/ros_tcp_endpoint
COPY ./docker/set-up-workspace /setup.sh
COPY docker/tutorial /
+RUN /bin/bash -c "find $ROS_WORKSPACE -type f -print0 | xargs -0 dos2unix"
+
RUN dos2unix /tutorial && dos2unix /setup.sh && chmod +x /setup.sh && /setup.sh && rm /setup.sh
ENTRYPOINT ["/tutorial"]
diff --git a/tutorials/ros_packages/robotics_demo/CMakeLists.txt b/tutorials/ros_packages/robotics_demo/CMakeLists.txt
index 12f3639a..bd843c37 100644
--- a/tutorials/ros_packages/robotics_demo/CMakeLists.txt
+++ b/tutorials/ros_packages/robotics_demo/CMakeLists.txt
@@ -1,168 +1,28 @@
cmake_minimum_required(VERSION 2.8.3)
project(robotics_demo)
-## Compile as C++11, supported in ROS Kinetic and newer
-# add_compile_options(-std=c++11)
-
-## Find catkin macros and libraries
-## 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
geometry_msgs
- tf_conversions
- tcp_endpoint
+ ros_tcp_endpoint
message_generation
)
-## System dependencies are found with CMake's conventions
-# find_package(Boost REQUIRED COMPONENTS system)
-
-
-## Uncomment this if the package has a setup.py. This macro ensures
-## modules and global scripts declared therein get installed
-## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html
-# catkin_python_setup()
-
-################################################
-## Declare ROS messages, services and actions ##
-################################################
+add_message_files(DIRECTORY msg)
-## To declare and build messages, services or actions from within this
-## package, follow these steps:
-## * Let MSG_DEP_SET be the set of packages whose message types you use in
-## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...).
-## * In the file package.xml:
-## * add a build_depend tag for "message_generation"
-## * add a build_depend and a exec_depend tag for each package in MSG_DEP_SET
-## * If MSG_DEP_SET isn't empty the following dependency has been pulled in
-## but can be declared for certainty nonetheless:
-## * add a exec_depend tag for "message_runtime"
-## * In this file (CMakeLists.txt):
-## * add "message_generation" and every package in MSG_DEP_SET to
-## find_package(catkin REQUIRED COMPONENTS ...)
-## * add "message_runtime" and every package in MSG_DEP_SET to
-## catkin_package(CATKIN_DEPENDS ...)
-## * uncomment the add_*_files sections below as needed
-## and list every .msg/.srv/.action file to be processed
-## * uncomment the generate_messages entry below
-## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...)
-
-## Generate messages in the 'msg' folder
-add_message_files(
- FILES
- PosRot.msg
- UnityColor.msg
-)
-
-## Generate services in the 'srv' folder
-add_service_files(
- FILES
- PositionService.srv
-)
+add_service_files(DIRECTORY srv)
-## Generate actions in the 'action' folder
-# add_action_files(
-# FILES
-# Action1.action
-# Action2.action
-# )
-
-## Generate added messages and services with any dependencies listed here
generate_messages(
DEPENDENCIES
geometry_msgs
std_msgs
)
-################################################
-## Declare ROS dynamic reconfigure parameters ##
-################################################
-
-## To declare and build dynamic reconfigure parameters within this
-## package, follow these steps:
-## * In the file package.xml:
-## * add a build_depend and a exec_depend tag for "dynamic_reconfigure"
-## * In this file (CMakeLists.txt):
-## * add "dynamic_reconfigure" to
-## find_package(catkin REQUIRED COMPONENTS ...)
-## * uncomment the "generate_dynamic_reconfigure_options" section below
-## and list every .cfg file to be processed
+catkin_package(CATKIN_DEPENDS
+ ros_tcp_endpoint
+ message_runtime)
-## Generate dynamic reconfigure parameters in the 'cfg' folder
-# generate_dynamic_reconfigure_options(
-# cfg/DynReconf1.cfg
-# cfg/DynReconf2.cfg
-# )
-
-###################################
-## catkin specific configuration ##
-###################################
-## The catkin_package macro generates cmake config files for your package
-## Declare things to be passed to dependent projects
-## INCLUDE_DIRS: uncomment this if your package contains header files
-## LIBRARIES: libraries you create in this project that dependent projects also need
-## CATKIN_DEPENDS: catkin_packages dependent projects also need
-## DEPENDS: system dependencies of this project that dependent projects also need
-catkin_package(
-# INCLUDE_DIRS include
-# LIBRARIES robotics_demo
-# CATKIN_DEPENDS roscpp rospy std_msgs geometry_msgs tf_conversions tcp_endpoint
-# DEPENDS system_lib
-)
-
-###########
-## Build ##
-###########
-
-## Specify additional locations of header files
-## Your package locations should be listed before other locations
-include_directories(
-# include
- ${catkin_INCLUDE_DIRS}
-)
-
-## Declare a C++ library
-# add_library(${PROJECT_NAME}
-# src/${PROJECT_NAME}/robotics_demo.cpp
-# )
-
-## Add cmake target dependencies of the library
-## as an example, code may need to be generated before libraries
-## either from message generation or dynamic reconfigure
-# add_dependencies(${PROJECT_NAME} ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})
-
-## 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}_node src/robotics_demo_node.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}_node PROPERTIES OUTPUT_NAME node 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}_node
-# ${catkin_LIBRARIES}
-# )
-
-#############
-## Install ##
-#############
-
-# all install targets should use catkin DESTINATION variables
-# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html
-
-## Mark executable scripts (Python etc.) for installation
-## in contrast to setup.py, you can choose the destination
catkin_install_python(PROGRAMS
scripts/server_endpoint.py
scripts/position_service.py
@@ -170,33 +30,6 @@ catkin_install_python(PROGRAMS
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
-## Mark executables for installation
-## See http://docs.ros.org/melodic/api/catkin/html/howto/format1/building_executables.html
-# install(TARGETS ${PROJECT_NAME}_node
-# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
-# )
-
-## Mark libraries for installation
-## See http://docs.ros.org/melodic/api/catkin/html/howto/format1/building_libraries.html
-# install(TARGETS ${PROJECT_NAME}
-# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
-# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
-# RUNTIME DESTINATION ${CATKIN_GLOBAL_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}
-# )
#############
## Testing ##
diff --git a/tutorials/ros_packages/robotics_demo/package.xml b/tutorials/ros_packages/robotics_demo/package.xml
index d0790182..f7ee200f 100644
--- a/tutorials/ros_packages/robotics_demo/package.xml
+++ b/tutorials/ros_packages/robotics_demo/package.xml
@@ -4,63 +4,23 @@
0.0.0
The robotics_demo package
-
-
-
- michaelp
+ Unity Robotics
-
-
-
- TODO
+ Apache 2.0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- message_generation
-
-
-
-
-
- message_runtime
-
-
-
-
catkin
- roscpp
rospy
+ message_generation
std_msgs
- tcp_endpoint
- roscpp
+ ros_tcp_endpoint
rospy
std_msgs
- tcp_endpoint
- roscpp
+ ros_tcp_endpoint
+ message_runtime
rospy
std_msgs
- tcp_endpoint
+ ros_tcp_endpoint
diff --git a/tutorials/ros_packages/robotics_demo/scripts/server_endpoint.py b/tutorials/ros_packages/robotics_demo/scripts/server_endpoint.py
index c2467593..0485d971 100755
--- a/tutorials/ros_packages/robotics_demo/scripts/server_endpoint.py
+++ b/tutorials/ros_packages/robotics_demo/scripts/server_endpoint.py
@@ -2,10 +2,7 @@
import rospy
-from tcp_endpoint.RosTCPServer import TCPServer
-from tcp_endpoint.RosPublisher import RosPublisher
-from tcp_endpoint.RosSubscriber import RosSubscriber
-from tcp_endpoint.RosService import RosService
+from ros_tcp_endpoint import TcpServer, RosPublisher, RosSubscriber, RosService
from robotics_demo.msg import PosRot, UnityColor
from robotics_demo.srv import PositionService
@@ -14,7 +11,7 @@ def main():
ros_node_name = rospy.get_param("/TCP_NODE_NAME", 'TCPServer')
buffer_size = rospy.get_param("/TCP_BUFFER_SIZE", 1024)
connections = rospy.get_param("/TCP_CONNECTIONS", 10)
- tcp_server = TCPServer(ros_node_name, buffer_size, connections)
+ tcp_server = TcpServer(ros_node_name, buffer_size, connections)
tcp_server.source_destination_dict = {
'pos_srv': RosService('position_service', PositionService),
diff --git a/tutorials/ros_unity_integration/publisher.md b/tutorials/ros_unity_integration/publisher.md
index ead607d5..2e5cdf09 100644
--- a/tutorials/ros_unity_integration/publisher.md
+++ b/tutorials/ros_unity_integration/publisher.md
@@ -82,7 +82,7 @@ public class RosPublisherExample : MonoBehaviour
- Add a plane and a cube to the empty Unity scene
- Move the cube a little ways up so it is hovering above the plane
-- Create an empty GameObject, name it `RosConnection` and attach the `Plugins/TcpConnector/ROSConnection` script.
+- Create an empty GameObject, name it `RosConnection` and attach the `ROS TCP Connection/Runtime/TcpConnector/ROSConnection` script.
- Change the host name and port to match the ROS IP and port variables defined when you set up ROS
- Create another empty GameObject, name it `RosPublisher` and attach the `RosPublisherExample` script.
- Drag the cube GameObject onto the `Cube` parameter
diff --git a/tutorials/ros_unity_integration/server_endpoint.md b/tutorials/ros_unity_integration/server_endpoint.md
index 2798c33e..330fee23 100644
--- a/tutorials/ros_unity_integration/server_endpoint.md
+++ b/tutorials/ros_unity_integration/server_endpoint.md
@@ -14,10 +14,7 @@ The following is an example of a server endpoint Python script that:
import rospy
-from tcp_endpoint.RosTCPServer import TCPServer
-from tcp_endpoint.RosPublisher import RosPublisher
-from tcp_endpoint.RosSubscriber import RosSubscriber
-from tcp_endpoint.RosService import RosService
+from ros_tcp_endpoint import TcpServer, RosPublisher, RosSubscriber, RosService
from robotics_demo.msg import PosRot, UnityColor
from robotics_demo.srv import PositionService
@@ -26,7 +23,7 @@ def main():
ros_node_name = rospy.get_param("/TCP_NODE_NAME", 'TCPServer')
buffer_size = rospy.get_param("/TCP_BUFFER_SIZE", 1024)
connections = rospy.get_param("/TCP_CONNECTIONS", 10)
- tcp_server = TCPServer(ros_node_name, buffer_size, connections)
+ tcp_server = TcpServer(ros_node_name, buffer_size, connections)
tcp_server.source_destination_dict = {
'pos_srv': RosService('position_service', PositionService),
@@ -46,13 +43,8 @@ if __name__ == "__main__":
## Import Statements for Services and Messages
```python
-# TCP Endpoint package imports to enable ROS communication
-from tcp_endpoint.RosTCPServer import TCPServer
-from tcp_endpoint.RosPublisher import RosPublisher
-from tcp_endpoint.RosSubscriber import RosSubscriber
-from tcp_endpoint.RosService import RosService
+from ros_tcp_endpoint import TcpServer, RosPublisher, RosSubscriber, RosService
-# Import specific ROS Messages and Services
from robotics_demo.msg import PosRot, UnityColor
from robotics_demo.srv import PositionService
```
@@ -96,7 +88,7 @@ Requires:
- The ROS node name
```python
- tcp_server = TCPServer(ros_node_name)
+ tcp_server = TcpServer(ros_node_name)
```
## Source Destination Dictionary
diff --git a/tutorials/ros_unity_integration/setup.md b/tutorials/ros_unity_integration/setup.md
index ac0c2a5a..e26e1e4d 100644
--- a/tutorials/ros_unity_integration/setup.md
+++ b/tutorials/ros_unity_integration/setup.md
@@ -26,15 +26,13 @@ Once ROS Core has started, it will print `started core service [/rosout]` to the
```yaml
ROS_IP:
ROS_TCP_PORT: 10000
- rosdistro: 'melodic'
```
e.g.
```yaml
- ROS_IP: 192.168.50.149
+ ROS_IP: 127.0.0.1
ROS_TCP_PORT: 10000
- rosdistro: 'melodic'
```
Ensure that the `ROS_TCP_PORT` is set to 10000.