ROS2 - rclpy set parameter example? [closed]
Is there an example of setting parameters on another node using rclpy? I can't find one.
ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
Is there an example of setting parameters on another node using rclpy? I can't find one.
There may be additional helper functions or an entire wrapper but in bouncy I go through the set_parameters service interface.
class MinimalClientAsync(Node):
def __init__(self):
super().__init__('minimal_client_async')
self.cli = self.create_client(SetParameters, 'v4l2ucp/set_parameters')
while not self.cli.wait_for_service(timeout_sec=1.0):
self.get_logger().info('service not available, waiting again...')
self.req = None
def send_request(self):
self.req = SetParameters.Request()
param = Parameter()
param.name = "controls/Brightness"
param.value.type = ParameterType.PARAMETER_INTEGER
param.value.integer_value = 20
self.req.parameters.append(param)
param = Parameter()
param.name = "controls/Contrast"
param.value.type = ParameterType.PARAMETER_INTEGER
param.value.integer_value = 15
self.req.parameters.append(param)
self.future = self.cli.call_async(self.req)
def main(args=None):
rclpy.init(args=args)
minimal_client = MinimalClientAsync()
minimal_client.send_request()
while rclpy.ok():
rclpy.spin_once(minimal_client)
if minimal_client.future.done():
if minimal_client.future.result() is not None:
response = minimal_client.future.result()
minimal_client.get_logger().info(
'Result of set parameters: for %s' %
(str(response)))
else:
minimal_client.get_logger().info(
'Service call failed %r' % (minimal_client.future.exception(),))
break
minimal_client.destroy_node()
rclpy.shutdown()
if __name__ == '__main__':
main()
https://github.com/lucasw/v4l2ucp/blo...
Adapted from https://github.com/ros2/examples/blob...
Asked: 2018-11-14 18:31:17 -0500
Seen: 1,890 times
Last updated: Nov 15 '18
[ROS2] rclpy Executor spin_some alternative/support
[ROS2][rclpy][Publisher] publish a msg to an existing topic [closed]
Matplotlib dynamic plot in ROS2 callback
How to get argument values in ROS2?
[Nav2] Why use Voxel layer over 2D layer for RGBD sensor?
ROS2 xacro parsing: ${robot_ip} vs $(arg robot_ip)
Cannot include tf2_geometry_msgs.h
[ROS2] I can publish a parameter with wrong type and get no exception
Is there a way to subscribe to a topic at a given rate in ROS2? [closed]