mirror of
https://github.com/6-robot/wpr_simulation2.git
synced 2025-09-15 12:58:54 +08:00
add 3_demo
This commit is contained in:
parent
6cb46d931a
commit
cd35a30bf4
@ -38,6 +38,16 @@ ament_target_dependencies(wpb_home_mani_sim
|
||||
"rclcpp" "std_msgs" "sensor_msgs"
|
||||
)
|
||||
|
||||
add_executable(3_publisher_node demo_cpp/3_publisher_node.cpp)
|
||||
ament_target_dependencies(3_publisher_node
|
||||
"rclcpp" "std_msgs"
|
||||
)
|
||||
|
||||
add_executable(3_subscriber_node demo_cpp/3_subscriber_node.cpp)
|
||||
ament_target_dependencies(3_subscriber_node
|
||||
"rclcpp" "std_msgs"
|
||||
)
|
||||
|
||||
add_executable(demo_mani_ctrl demo_cpp/demo_mani_ctrl.cpp)
|
||||
ament_target_dependencies(demo_mani_ctrl
|
||||
"rclcpp" "sensor_msgs"
|
||||
@ -60,12 +70,13 @@ if(BUILD_TESTING)
|
||||
ament_lint_auto_find_test_dependencies()
|
||||
endif()
|
||||
|
||||
install(DIRECTORY config launch worlds models meshes rviz src map
|
||||
install(DIRECTORY config launch demo_launch worlds models meshes rviz src map
|
||||
DESTINATION share/${PROJECT_NAME})
|
||||
|
||||
install(
|
||||
TARGETS
|
||||
wpb_home_mani_sim
|
||||
3_publisher_node 3_subscriber_node
|
||||
demo_mani_ctrl
|
||||
demo_nav2_client
|
||||
DESTINATION
|
||||
|
||||
26
demo_cpp/3_publisher_node.cpp
Normal file
26
demo_cpp/3_publisher_node.cpp
Normal file
@ -0,0 +1,26 @@
|
||||
#include "rclcpp/rclcpp.hpp"
|
||||
#include "std_msgs/msg/string.hpp"
|
||||
|
||||
int main(int argc, char * argv[])
|
||||
{
|
||||
rclcpp::init(argc, argv);
|
||||
|
||||
auto node = std::make_shared<rclcpp::Node>("publisher_node");
|
||||
|
||||
auto publisher = node->create_publisher<std_msgs::msg::String>("/topic", 10);
|
||||
|
||||
std_msgs::msg::String message;
|
||||
message.data = "Hello World!";
|
||||
|
||||
rclcpp::Rate loop_rate(1);
|
||||
|
||||
while (rclcpp::ok())
|
||||
{
|
||||
publisher->publish(message);
|
||||
loop_rate.sleep();
|
||||
}
|
||||
|
||||
rclcpp::shutdown();
|
||||
|
||||
return 0;
|
||||
}
|
||||
24
demo_cpp/3_subscriber_node.cpp
Normal file
24
demo_cpp/3_subscriber_node.cpp
Normal file
@ -0,0 +1,24 @@
|
||||
#include "rclcpp/rclcpp.hpp"
|
||||
#include "std_msgs/msg/string.hpp"
|
||||
|
||||
std::shared_ptr<rclcpp::Node> node;
|
||||
|
||||
void Callback(const std_msgs::msg::String::SharedPtr msg)
|
||||
{
|
||||
RCLCPP_INFO(node->get_logger(),"Receive : %s", msg->data.c_str());
|
||||
}
|
||||
|
||||
int main(int argc, char * argv[])
|
||||
{
|
||||
rclcpp::init(argc, argv);
|
||||
|
||||
node = std::make_shared<rclcpp::Node>("subscriber_node");
|
||||
|
||||
auto subscriber= node->create_subscription<std_msgs::msg::String>("/topic", 10, &Callback);
|
||||
|
||||
rclcpp::spin(node);
|
||||
|
||||
rclcpp::shutdown();
|
||||
|
||||
return 0;
|
||||
}
|
||||
20
demo_launch/3_pub_sub.launch.py
Normal file
20
demo_launch/3_pub_sub.launch.py
Normal file
@ -0,0 +1,20 @@
|
||||
from launch_ros.actions import Node
|
||||
from launch import LaunchDescription
|
||||
|
||||
def generate_launch_description():
|
||||
publisher_cmd = Node(
|
||||
package='wpr_simulation2',
|
||||
executable='3_publisher_node',
|
||||
name='publisher_node'
|
||||
)
|
||||
|
||||
subscriber_cmd = Node(
|
||||
package='wpr_simulation2',
|
||||
executable='3_subscriber_node',
|
||||
name='subscriber_node'
|
||||
)
|
||||
|
||||
ld = LaunchDescription()
|
||||
ld.add_action(publisher_cmd)
|
||||
ld.add_action(subscriber_cmd)
|
||||
return ld
|
||||
Loading…
Reference in New Issue
Block a user