您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 > 

03 ros如何訂閱(如何自定義ros的action服務)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-05-21 15:17:57【】5人已围观

简介ake5編寫action服務器端程序#!/usr/bin/envpythonimportroslib;roslib.load_manifest('action')importrospy

ake

5 編寫action服務器端程序

#!/usr/bin/env python

import roslib; roslib.load_manifest('action')

import rospy

import time

import actionlib

from action.msg import TimerAction, TimerGoal, TimerResult

def do_timer(goal):

start_time = time.time()

time.sleep(goal.time_to_wait.to_sec())

result = TimerResult()

result.time_elapsed = rospy.Duration.from_sec(time.time() - start_time)

result.updates_sent = 0

server.set_succeeded(result)

rospy.init_node('timer_action_server')

server = actionlib.SimpleActionServer('timer', TimerAction, do_timer, False)

server.start()

rospy.spin()

6 編寫ros的action客戶端程序

#!/usr/bin/env python

import roslib; roslib.load_manifest('action')

import rospy

import actionlib

from action.msg import TimerAction, TimerGoal, TimerResult

rospy.init_node('timer_action_client')

client = actionlib.SimpleActionClient('timer', TimerAction)

client.wait_for_server()

goal = TimerGoal()

goal.time_to_wait = rospy.Duration.from_sec(5.0)

client.send_goal(goal)

client.wait_for_result()

print('Time elapsed: %f'%(client.get_result().time_elapsed.to_sec()))

7 測試運行(開四個終端)

ros買粉絲re

rosrun action action_c.py

rosrun action action_s.py

8 查看信息

liao@liao-eagle:~/catkin_ws/src/action/src$ rostopic list

/rosout

/rosout_agg

/timer/cancel

/timer/feedback

/timer/goal

/timer/result

/timer/status

liao@liao-eagle:~/catkin_ws/src/action/src$ rostopic info /timer/goal

Type: action/TimerActionGoal

Publishers: None

Subscribers:

* /timer_action_server (買粉絲://liao-eagle:42857/)

liao@liao-eagle:~/catkin_ws/src/action/src$ rosmsg show TimerActionGoal

[action/TimerActionGoal]:

std_msgs/Header header

uint32 seq

time stamp

string frame_id

actionlib_msgs/GoalID goal_id

time stamp

string id

action/TimerGoal goal

ration time_to_wait

liao@liao-eagle:~/catkin_ws/src/action/src$ rosmsg show TimerGoal

[action/TimerGoal]:

ration time_to_wait

9 rqt_graph

ROS訂閱的topic如何通過tcp傳送給QT并顯示到界面上

傳遞一下啊

lineEdit中的值,在登陸確認后,傳遞給即將打開的窗體

很赞哦!(2)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片

职业:程序员,设计师

现居:河南新乡红旗区

工作室:小组

Email:[email protected]