ROS2学习日志:TurtleSim测试日志(基于ROS2 Eloquent Elusor)

TurtleSim测试日志(基于ROS2 Eloquent Elusor)

1.ros2 run

1.1 ros2 run turtlesim turtlesim_node --ros-args --remap __node:=robotMan

1.2 ros2 runturtlesim turtle_teleop_key --ros-args --remap __node:=robotRC


2.ros2 node

2.1 ros2 node list

/robotMan

/robotRC

2. 2 ros2 node info /robotMan

/robotMan

Subscribers:

/parameter_events: rcl_interfaces/msg/ParameterEvent

/turtle1/cmd_vel: geometry_msgs/msg/Twist

Publishers:

/parameter_events: rcl_interfaces/msg/ParameterEvent

/rosout: rcl_interfaces/msg/Log

/turtle1/color_sensor: turtlesim/msg/Color

/turtle1/pose: turtlesim/msg/Pose

Service Servers:

/clear: std_srvs/srv/Empty

/kill: turtlesim/srv/Kill

/reset: std_srvs/srv/Empty

/robotMan/describe_parameters: rcl_interfaces/srv/DescribeParameters

/robotMan/get_parameter_types: rcl_interfaces/srv/GetParameterTypes

/robotMan/get_parameters: rcl_interfaces/srv/GetParameters

/robotMan/list_parameters: rcl_interfaces/srv/ListParameters

/robotMan/set_parameters: rcl_interfaces/srv/SetParameters

/robotMan/set_parameters_atomically: rcl_interfaces/srv/SetParametersAtomically

/spawn: turtlesim/srv/Spawn

/turtle1/set_pen: turtlesim/srv/SetPen

/turtle1/teleport_absolute: turtlesim/srv/TeleportAbsolute

/turtle1/teleport_relative: turtlesim/srv/TeleportRelative

Service Clients:


Action Servers:

/turtle1/rotate_absolute: turtlesim/action/RotateAbsolute

Action Clients:


3.ros2 topic

3.1 ros2 topic list -t

/parameter_events [rcl_interfaces/msg/ParameterEvent]

/rosout [rcl_interfaces/msg/Log]

/turtle1/cmd_vel [geometry_msgs/msg/Twist]

/turtle1/color_sensor [turtlesim/msg/Color]

/turtle1/pose [turtlesim/msg/Pose]

3.2 ros2 topic type /turtle1/cmd_vel

geometry_msgs/msg/Twist

ros2 interface show geometry_msgs/msg/Twist

# This expresses velocity in free space broken into its linear and angular parts.


Vector3 linear

Vector3 angular

3.3 ros2 topic info /turtle1/cmd_vel

Type: geometry_msgs/msg/Twist

Publisher count: 1

Subscriber count: 1

3. 4 ros2 topic hz /turtle1/cmd_vel

average rate: 0.406

min: 0.001s max: 4.923s std dev: 2.46103s window: 2

average rate: 1.329

min: 0.000s max: 4.923s std dev: 1.58888s window: 8

3. 5 ros2 topic bw /turtle1/cmd_vel

Subscribed to [/turtle1/cmd_vel]

average: 218.03B/s

mean: 52.00B/s min: 52.00B/s max: 52.00B/s window: 2

average: 140.26B/s

mean: 52.00B/s min: 52.00B/s max: 52.00B/s window: 4

3.6 ros2 topic delay /turtle1/cmd_vel

msg does not have header

3.7 ros2 topic echo /turtle1/cmd_vel

linear:

x: 0.0

y: 0.0

z: 0.0

angular:

x: 0.0

y: 0.0

z: -2.0

---

linear:

x: 0.0

y: 0.0

z: 0.0

angular:

x: 0.0

y: 0.0

z: -2.0

3.8 ros2 topic pub --once /turtle1/cmd_vel geometry_msgs/msg/Twist “{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.8}}”

publisher: beginning loop

publishing #1: geometry_msgs.msg.Twist(linear=geometry_msgs.msg.Vector3(x=2.0, y=0.0, z=0.0), angular=geometry_msgs.msg.Vector3(x=0.0, y=0.0, z=1.8))

ros2 topic pub --rate1 /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.8}}"

publisher: beginning loopss

publishing #1: geometry_msgs.msg.Twist(linear=geometry_msgs.msg.Vector3(x=2.0, y=0.0, z=0.0), angular=geometry_msgs.msg.Vector3(x=0.0, y=0.0, z=1.8))


publishing #2: geometry_msgs.msg.Twist(linear=geometry_msgs.msg.Vector3(x=2.0, y=0.0, z=0.0), angular=geometry_msgs.msg.Vector3(x=0.0, y=0.0, z=1.8))


publishing #3: geometry_msgs.msg.Twist(linear=geometry_msgs.msg.Vector3(x=2.0, y=0.0, z=0.0), angular=geometry_msgs.msg.Vector3(x=0.0, y=0.0, z=1.8))

3.9 ros2 topic find geometry_msgs/msg/Twist

/turtle1/cmd_vel


4.ros2 service

4.1 ros2 service list -t

/clear [std_srvs/srv/Empty]

/kill [turtlesim/srv/Kill]

/reset [std_srvs/srv/Empty]

/robotMan/describe_parameters [rcl_interfaces/srv/DescribeParameters]

/robotMan/get_parameter_types [rcl_interfaces/srv/GetParameterTypes]

/robotMan/get_parameters [rcl_interfaces/srv/GetParameters]

/robotMan/list_parameters [rcl_interfaces/srv/ListParameters]

/robotMan/set_parameters [rcl_interfaces/srv/SetParameters]

/robotMan/set_parameters_atomically [rcl_interfaces/srv/SetParametersAtomically]

/robotRC/describe_parameters [rcl_interfaces/srv/DescribeParameters]

/robotRC/get_parameter_types [rcl_interfaces/srv/GetParameterTypes]

/robotRC/get_parameters [rcl_interfaces/srv/GetParameters]

/robotRC/list_parameters [rcl_interfaces/srv/ListParameters]

/robotRC/set_parameters [rcl_interfaces/srv/SetParameters]

/robotRC/set_parameters_atomically [rcl_interfaces/srv/SetParametersAtomically]

/spawn [turtlesim/srv/Spawn]

/turtle1/set_pen [turtlesim/srv/SetPen]

/turtle1/teleport_absolute [turtlesim/srv/TeleportAbsolute]

/turtle1/teleport_relative [turtlesim/srv/TeleportRelative]

4.2 ros2 service type /spawn/kill

turtlesim/srv/Spawn turtlesim/srv/Kill

ros2 interface showturtlesim/srv/Spawnturtlesim/srv/Kill

float32 x string name

float32 y ---

float32 theta

string name # Optional. A unique name will be created and returned if this is empty

---

string name

4.3 ros2 service call/spawn turtlesim/srv/Spawn "{x: 2, y: 2, theta: 0.2, name: 'turtleXYZ'}"

waiting for service to become available...

requester: making request: turtlesim.srv.Spawn_Request(x=2.0, y=2.0, theta=0.2, name='turtleXYZ')


response:

turtlesim.srv.Spawn_Response(name='turtleXYZ')

ros2 node list

/robotMan

/robotRC

ros2 topic list

/parameter_events

/rosout

/turtle1/cmd_vel

/turtle1/color_sensor

/turtle1/pose

/turtleXYZ/cmd_vel

/turtleXYZ/color_sensor

/turtleXYZ/pose

ros2 service list

/clear

/kill

/reset

/robotMan/describe_parameters

/robotMan/get_parameter_types

/robotMan/get_parameters

/robotMan/list_parameters

/robotMan/set_parameters

/robotMan/set_parameters_atomically

/robotRC/describe_parameters

/robotRC/get_parameter_types

/robotRC/get_parameters

/robotRC/list_parameters

/robotRC/set_parameters

/robotRC/set_parameters_atomically

/spawn

/turtle1/set_pen

/turtle1/teleport_absolute

/turtle1/teleport_relative

/turtleXYZ/set_pen

/turtleXYZ/teleport_absolute

/turtleXYZ/teleport_relative

ros2 service call/kill turtlesim/srv/Kill "{name: 'turtleXYZ'}"

waiting for service to become available...

requester: making request: turtlesim.srv.Kill_Request(name='turtleXYZ')


response:

turtlesim.srv.Kill_Response()

4.4 ros2 service findturtlesim/srv/Spawn turtlesim/srv/Kill

/spawn /kill


5.ros2 action

5.1 ros2 action list -t

/turtle1/rotate_absolute [turtlesim/action/RotateAbsolute]

5.2 ros2 action info /turtle1/rotate_absolute

Action: /turtle1/rotate_absolute

Action clients: 1

/robotRC

Action servers: 1

/robotMan

5.3 ros2 action show turtlesim/action/RotateAbsolute

# The desired heading in radians

float32 theta

---

# The angular displacement in radians to the starting position

float32 delta

---

# The remaining rotation in radians

float32 remaining

ros2 interface show turtlesim/action/RotateAbsolute

# The desired heading in radians

float32 theta

---

# The angular displacement in radians to the starting position

float32 delta

---

# The remaining rotation in radians

float32 remaining

5.4 ros2 action send_goal /turtle1/rotate_absolute turtlesim/action/RotateAbsolute "{theta: 1.57}"

Waiting for an action server to become available...

Sending goal:

theta: 1.57


Goal accepted with ID: 0f0afda3857f4c7393360e211f6701f9


Result:

delta: -1.5520002841949463


Goal finished with status: SUCCEEDED

6.ros2 param

6.1 ros2 param list

/robotMan:

background_b

background_g

background_r

use_sim_time

/robotRC:

scale_angular

scale_linear

use_sim_time

6.2 ros2 param get/robotMan background_r

Integer value is: 69

6.3 ros2 param set/robotMan background_r 255

Set parameter successful

ros2 param dump /robotMan

Saving to: .\robotMan.yaml

robotMan:

ros__parameters:

background_b: 255

background_g: 86

background_r: 255

use_sim_time: false

6.4 ros2 param delete /robotMan background_r

Deleted parameter successfully

ros2 param list

/robotMan:

background_b

background_g

use_sim_time

/robotRC:

scale_angular

scale_linear

use_sim_time

6.5 ros2 param describe /robotMan /background_r

Parameter name: background_r

Type: integer

Description: Red channel of the background color

Constraints:

Min value: 0

Max value: 255

6.6 ros2 param dump /robotMan

Saving to: .\robotMan.yaml


7.ros2 launch

7.1 ros2 launchturtlesim_mimic_launch.py

[INFO] [launch]: All log files can be found below C:\Users\Administrator\.ros/log\2020-01-02-20-17-03-535917-Win10PC-9152

[INFO] [launch]: Default logging verbosity is set to INFO

[INFO] [turtlesim_node.EXE-1]: process started with pid [3832]

[INFO] [turtlesim_node.EXE-2]: process started with pid [10064]

[INFO] [mimic.EXE-3]: process started with pid [8304]

from launch import LaunchDescription

from launch_ros.actions import Node


def generate_launch_description():

return LaunchDescription([

Node(

package='turtlesim',

node_executable='turtlesim_node',

node_name='robotMan',

node_namespace='namespaceABC',

),

Node(

package='turtlesim',

node_executable='turtlesim_node',

node_name='robotMan',

node_namespace='namespaceXYZ'

),

Node(

package='turtlesim',

node_executable='mimic',

node_name='mimic',

remappings=[

('/input/pose', '/namespaceABC/turtle1/pose'),

('/output/cmd_vel', '/namespaceXYZ/turtle1/cmd_vel'),

]

)

])

ros2 topic pub -r 1 /namespaceABC/turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: -1.8}}"

ros2 node list

/launch_ros

/mimic

/namespaceABC/robotMan

/namespaceXYZ/robotMan


ros2 topic list

/namespaceABC/parameter_events

/namespaceABC/robotMan/pose

/namespaceABC/rosout

/namespaceABC/turtle1/cmd_vel

/namespaceABC/turtle1/color_sensor

/namespaceABC/turtle1/pose

/namespaceXYZ/parameter_events

/namespaceXYZ/robotMan/cmd_vel

/namespaceXYZ/rosout

/namespaceXYZ/turtle1/cmd_vel

/namespaceXYZ/turtle1/color_sensor

/namespaceXYZ/turtle1/pose

/parameter_events

/rosout


ros2 action list

/namespaceABC/turtle1/rotate_absolute

/namespaceXYZ/turtle1/rotate_absolute


ros2 param list

/launch_ros:

use_sim_time

/mimic:

use_sim_time

/namespaceABC/robotMan:

background_b

background_g

background_r

use_sim_time

/namespaceXYZ/robotMan:

background_b

background_g

background_r

use_sim_time

ros2 service list

/launch_ros/describe_parameters

/launch_ros/get_parameter_types

/launch_ros/get_parameters

/launch_ros/list_parameters

/launch_ros/set_parameters

/launch_ros/set_parameters_atomically

/mimic/describe_parameters

/mimic/get_parameter_types

/mimic/get_parameters

/mimic/list_parameters

/mimic/set_parameters

/mimic/set_parameters_atomically

/namespaceABC/clear

/namespaceABC/kill

/namespaceABC/reset

/namespaceABC/robotMan/describe_parameters

/namespaceABC/robotMan/get_parameter_types

/namespaceABC/robotMan/get_parameters

/namespaceABC/robotMan/list_parameters

/namespaceABC/robotMan/set_parameters

/namespaceABC/robotMan/set_parameters_atomically

/namespaceABC/spawn

/namespaceABC/turtle1/set_pen

/namespaceABC/turtle1/teleport_absolute

/namespaceABC/turtle1/teleport_relative

/namespaceXYZ/clear

/namespaceXYZ/kill

/namespaceXYZ/reset

/namespaceXYZ/robotMan/describe_parameters

/namespaceXYZ/robotMan/get_parameter_types

/namespaceXYZ/robotMan/get_parameters

/namespaceXYZ/robotMan/list_parameters

/namespaceXYZ/robotMan/set_parameters

/namespaceXYZ/robotMan/set_parameters_atomically

/namespaceXYZ/spawn

/namespaceXYZ/turtle1/set_pen

/namespaceXYZ/turtle1/teleport_absolute

/namespaceXYZ/turtle1/teleport_relative


猜你喜欢

转载自www.cnblogs.com/dzyBK/p/12288234.html