Comments (1)
I made changes to the server:
import actionlib
import rospy
import mbf_msgs.msg as mbf_msgs
import move_base_msgs.msg as mb_msgs
from geometry_msgs.msg import PoseStamped
import tf
robotpose = PoseStamped()
def mb_execute_cb(msg):
mbf_mb_ac.send_goal(mbf_msgs.MoveBaseGoal(target_pose=msg.target_pose),
feedback_cb=mbf_feedback_cb)
rospy.logdebug("Relaying move_base goal to mbf")
mbf_mb_ac.wait_for_result()
status = mbf_mb_ac.get_state()
result = mbf_mb_ac.get_result()
rospy.logdebug("MBF execution completed with result [%d]: %s", result.outcome, result.message)
if result.outcome == mbf_msgs.MoveBaseResult.SUCCESS:
mb_as.set_succeeded(mb_msgs.MoveBaseResult(), "Goal reached.")
else:
mb_as.set_aborted(mb_msgs.MoveBaseResult(), result.message)
def mbf_feedback_cb():
listener = tf.TransformListener()
listener.waitForTransform('map', 'base_footprint', rospy.Time(0), rospy.Duration(50))
(trans, rot) = listener.lookupTransform('map', 'base_footprint', rospy.Time(0))
robotpose.header.stamp = rospy.get_rostime()
robotpose.header.frame_id = 'map'
robotpose.pose.position.x = trans[0]
robotpose.pose.position.y = trans[1]
robotpose.pose.position.z = trans[2]
robotpose.pose.orientation.x = rot[0]
robotpose.pose.orientation.y = rot[1]
robotpose.pose.orientation.z = rot[2]
robotpose.pose.orientation.w = rot[3]
print("hell")
mb_as.publish_feedback(mb_msgs.MoveBaseFeedback(base_position=robotpose))
if __name__ == '__main__':
rospy.init_node("move_base")
# move_base_flex get_path and move_base action clients
mbf_mb_ac = actionlib.SimpleActionClient("move_base_flex/move_base", mbf_msgs.MoveBaseAction)
mbf_mb_ac.wait_for_server(rospy.Duration(10))
mb_as = actionlib.SimpleActionServer('move_base', mb_msgs.MoveBaseAction, mb_execute_cb, auto_start=False)
mb_as.start()
rospy.spin()
But I get an error of Map data not being received. Would you happen to know what any of the possible issues could be?
from mbf_tutorials.
Related Issues (5)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mbf_tutorials.