def __init__(self,angle=0):
State.__init__(self, outcomes=['succeeded','aborted','preempted'],input_keys=["angle_in"])
self.speed = rospy.get_param('~speed', 0.10)
self.secretindigal = 1.0
self.tolerance = rospy.get_param('tolerance', math.radians(5))
self.start = True
self.cmd_vel = rospy.Publisher('mobile_base_controller/smooth_cmd_vel', Twist, queue_size=5)
self.base_frame = rospy.get_param('~base_frame', '/base_link')
self.odom_frame = rospy.get_param('~odom_frame', '/odom')
rospy.on_shutdown(self.shutdown)
self.rate = 30
self.start_test = True
self.r = rospy.Rate(self.rate)
self.tf_listener = tf.TransformListener()
rospy.sleep(0.5)
self.tf_listener.waitForTransform(self.odom_frame, self.base_frame, rospy.Time(), rospy.Duration(60))
python类Time()的实例源码
def __init__(self, angle=0):
State.__init__(self, outcomes=['succeeded', 'aborted', 'preempted'], input_keys=["angle_in"])
self.speed = rospy.get_param('~speed', 0.03)
self.secretindigal = 1.0
self.tolerance = rospy.get_param('tolerance', math.radians(5))
self.start = True
self.cmd_vel = rospy.Publisher('mobile_base_controller/smooth_cmd_vel', Twist, queue_size=5)
self.base_frame = rospy.get_param('~base_frame', '/base_link')
self.odom_frame = rospy.get_param('~odom_frame', '/odom')
rospy.on_shutdown(self.shutdown)
self.rate = 30
self.start_test = True
self.r = rospy.Rate(self.rate)
self.angle=angle
self.tf_listener = tf.TransformListener()
rospy.sleep(0.5)
self.tf_listener.waitForTransform(self.odom_frame, self.base_frame, rospy.Time(), rospy.Duration(60))
def __init__(self, angle=0):
State.__init__(self, outcomes=['succeeded', 'aborted', 'preempted'])
self.speed = rospy.get_param('~speed', 0.03)
self.secretindigal = 1.0
self.tolerance = rospy.get_param('tolerance', math.radians(5))
self.start = True
self.cmd_vel = rospy.Publisher('mobile_base_controller/smooth_cmd_vel', Twist, queue_size=5)
self.base_frame = rospy.get_param('~base_frame', '/base_link')
self.odom_frame = rospy.get_param('~odom_frame', '/odom')
rospy.on_shutdown(self.shutdown)
self.rate = 30
self.start_test = True
self.r = rospy.Rate(self.rate)
self.angle=angle
self.tf_listener = tf.TransformListener()
rospy.sleep(0.5)
self.tf_listener.waitForTransform(self.odom_frame, self.base_frame, rospy.Time(), rospy.Duration(60))
def __init__(self,dis=0):
State.__init__(self, outcomes=['succeeded','preempted','aborted'])
rospy.on_shutdown(self.shutdown)
self.test_distance = dis
self.rate = 100
self.r = rospy.Rate(self.rate)
self.speed = rospy.get_param('~speed',0.08)
self.tolerance = rospy.get_param('~tolerance', 0.01)
self.cmd_vel = rospy.Publisher('/mobile_base_controller/smooth_cmd_vel',Twist,queue_size=5)
self.base_frame = rospy.get_param('~base_frame', '/base_link')
self.odom_frame = rospy.get_param('~odom_frame', '/odom')
self.tf_listener = tf.TransformListener()
rospy.sleep(1)
self.tf_listener.waitForTransform(self.odom_frame,self.base_frame,rospy.Time(),rospy.Duration(60.0))
self.flag = rospy.get_param('~flag', True)
#tf get position
self.position = Point()
self.position = self.get_position()
self.y_start = self.position.y
self.x_start = self.position.x
#publish cmd_vel
def __init__(self,dis=0.0):
State.__init__(self, outcomes=['succeeded','preempted','aborted'])
rospy.on_shutdown(self.shutdown)
self.test_distance = target.y-0.0
self.rate = 100
self.r = rospy.Rate(self.rate)
self.speed = rospy.get_param('~speed',0.08)
self.tolerance = rospy.get_param('~tolerance', 0.01)
self.cmd_vel = rospy.Publisher('/mobile_base_controller/smooth_cmd_vel',Twist,queue_size=5)
self.base_frame = rospy.get_param('~base_frame', '/base_link')
self.odom_frame = rospy.get_param('~odom_frame', '/odom')
self.tf_listener = tf.TransformListener()
rospy.sleep(1)
self.tf_listener.waitForTransform(self.odom_frame,self.base_frame,rospy.Time(),rospy.Duration(60.0))
#define a bianliang
self.flag = rospy.get_param('~flag', True)
rospy.loginfo(self.test_distance)
#tf get position
#publish cmd_vel
def __init__(self,angle=0):
State.__init__(self, outcomes=['succeeded','aborted','preempted'])
self.speed = rospy.get_param('~speed', 0.20)
self.secretindigal = 1.0
self.tolerance = rospy.get_param('tolerance', math.radians(5))
self.start = True
self.cmd_vel = rospy.Publisher('mobile_base_controller/smooth_cmd_vel', Twist, queue_size=5)
self.base_frame = rospy.get_param('~base_frame', '/base_link')
self.odom_frame = rospy.get_param('~odom_frame', '/odom')
rospy.on_shutdown(self.shutdown)
self.rate = 30
self.start_test = True
self.r = rospy.Rate(self.rate)
self.angle = angle
self.tf_listener = tf.TransformListener()
rospy.sleep(0.5)
self.tf_listener.waitForTransform(self.odom_frame, self.base_frame, rospy.Time(), rospy.Duration(60))
def __init__(self,angle=0):
State.__init__(self, outcomes=['succeeded','aborted','preempted'])
self.speed = rospy.get_param('~speed', 0.20)
self.secretindigal = 1.0
self.tolerance = rospy.get_param('tolerance', math.radians(5))
self.start = True
self.cmd_vel = rospy.Publisher('mobile_base_controller/smooth_cmd_vel', Twist, queue_size=5)
self.base_frame = rospy.get_param('~base_frame', '/base_link')
self.odom_frame = rospy.get_param('~odom_frame', '/odom')
rospy.on_shutdown(self.shutdown)
self.rate = 30
self.start_test = True
self.r = rospy.Rate(self.rate)
self.angle = angle
self.tf_listener = tf.TransformListener()
rospy.sleep(0.5)
self.tf_listener.waitForTransform(self.odom_frame, self.base_frame, rospy.Time(), rospy.Duration(60))
def __init__(self, limb):
ns = 'robot/limb/' + limb + '/'
self._client = actionlib.SimpleActionClient(
ns + "follow_joint_trajectory",
FollowJointTrajectoryAction,
)
self._goal = FollowJointTrajectoryGoal()
self._goal_time_tolerance = rospy.Time(0.1)
self._goal.goal_time_tolerance = self._goal_time_tolerance
server_up = self._client.wait_for_server(timeout=rospy.Duration(10.0))
if not server_up:
rospy.logerr("Timed out waiting for Joint Trajectory"
" Action Server to connect. Start the action server"
" before running example.")
rospy.signal_shutdown("Timed out waiting for Action Server")
sys.exit(1)
self.clear(limb)
def __init__(self, limb):
ns = 'robot/limb/' + limb + '/'
self._client = actionlib.SimpleActionClient(
ns + "follow_joint_trajectory",
FollowJointTrajectoryAction,
)
self._goal = FollowJointTrajectoryGoal()
self._goal_time_tolerance = rospy.Time(0.1)
self._goal.goal_time_tolerance = self._goal_time_tolerance
server_up = self._client.wait_for_server(timeout=rospy.Duration(10.0))
if not server_up:
rospy.logerr("Timed out waiting for Joint Trajectory"
" Action Server to connect. Start the action server"
" before running example.")
rospy.signal_shutdown("Timed out waiting for Action Server")
sys.exit(1)
self.clear(limb)
def __init__(self, limb):
ns = 'robot/limb/' + limb + '/'
self._client = actionlib.SimpleActionClient(
ns + "follow_joint_trajectory",
FollowJointTrajectoryAction,
)
self._goal = FollowJointTrajectoryGoal()
self._goal_time_tolerance = rospy.Time(0.1)
self._goal.goal_time_tolerance = self._goal_time_tolerance
server_up = self._client.wait_for_server(timeout=rospy.Duration(10.0))
if not server_up:
rospy.logerr("Timed out waiting for Joint Trajectory"
" Action Server to connect. Start the action server"
" before running example.")
rospy.signal_shutdown("Timed out waiting for Action Server")
sys.exit(1)
self._sub_path = rospy.Subscriber('joint_path', numpy_msg(Float32MultiArray), self.path_cb)
self._sub_traj = rospy.Subscriber('joint_traj', numpy_msg(Float32MultiArray), self.traj_cb)
self._limb_interface = baxter_interface.limb.Limb('right')
self._q_start = np.array([-0.22281071, -0.36470393, 0.36163597, 1.71920897, -0.82719914,
-1.16889336, -0.90888362])
self.clear(limb)
def __init__(self, limb):
ns = 'robot/limb/' + limb + '/'
self._client = actionlib.SimpleActionClient(
ns + "follow_joint_trajectory",
FollowJointTrajectoryAction,
)
self._goal = FollowJointTrajectoryGoal()
self._goal_time_tolerance = rospy.Time(0.1)
self._goal.goal_time_tolerance = self._goal_time_tolerance
server_up = self._client.wait_for_server(timeout=rospy.Duration(10.0))
if not server_up:
rospy.logerr("Timed out waiting for Joint Trajectory"
" Action Server to connect. Start the action server"
" before running example.")
rospy.signal_shutdown("Timed out waiting for Action Server")
sys.exit(1)
self._sub_path = rospy.Subscriber('joint_path', numpy_msg(Float32MultiArray), self.path_cb)
self._sub_traj = rospy.Subscriber('joint_traj', numpy_msg(Float32MultiArray), self.traj_cb)
self._limb_interface = baxter_interface.limb.Limb('right')
self._q_start = np.array([-0.22281071, -0.36470393, 0.36163597, 1.71920897, -0.82719914,
-1.16889336, -0.90888362])
self.clear(limb)
def main():
trans= 0
rot = 0
rospy.init_node('odom_sync')
listener = tf.TransformListener()
pubfiltered = rospy.Publisher('set_pose',PoseWithCovarianceStamped,queue_size = 10)
pubodom = rospy.Publisher('mobile_base/commands/reset_odometry', Empty, queue_size = 10)
serv = rospy.ServiceProxy("set_offset",SetOdomOffset)
rospy.Subscriber('/command_input',UInt8,callback,callback_args=(pubodom,pubfiltered,listener,trans,rot,serv))
rospy.sleep(1)
print "done sleeping"
while not rospy.is_shutdown():
try:
(trans,rot) = listener.lookupTransform('/base_meas', '/odom_meas',rospy.Time(0))
except: continue
rospy.spin()
def __init__(self):
self.imgprocess = ImageProcessor.ImageProcessor()
self.bridge = CvBridge()
self.latestimage = None
self.process = False
"""ROS Subscriptions """
self.image_pub = rospy.Publisher("/image_converter/output_video",Image, queue_size=10)
self.image_sub = rospy.Subscriber("/cam/camera_/image_raw",Image,self.cvt_image)
self.cmdVelocityPub = rospy.Publisher('/platform_control/cmd_vel', Twist, queue_size=10)
self.targetlane = 0
self.cmdvel = Twist()
self.last_time = rospy.Time()
self.sim_time = rospy.Time()
self.dt = 0
self.position_er = 0
self.position_er_last = 0;
self.cp = 0
self.vel_er = 0
self.cd = 0
self.Kp = 3
self.Kd = 3.5
def AdjustMotorSpeed(self, pos):
self.cmdvel.linear.x = 0.2
self.sim_time = rospy.Time.now()
self.dt = (self.sim_time - self.last_time).to_sec();
self.position_er = self.targetlane - pos
self.cp = self.position_er * self.Kp
self.vel_er = (self.position_er - self.position_er_last) * self.dt
self.cd = self.vel_er * self.Kd
self.cmdvel.angular.z = self.cp - self.cd
self.cmdvel.angular.z = self.limit(self.cmdvel.angular.z, -1, 1)
self.cmdVelocityPub.publish(self.cmdvel)
self.position_er_last = self.position_er
self.last_time = self.sim_time
def ros_time_from_sbp_time(msg):
return rospy.Time(GPS_EPOCH + msg.wn*WEEK_SECONDS + msg.tow * 1E-3 + msg.ns * 1E-9)
def callback_sbp_gps_time(self, msg, **metadata):
if self.debug:
rospy.loginfo("Received SBP_MSG_GPS_TIME (Sender: %d): %s" % (msg.sender, repr(msg)))
out = TimeReference()
out.header.frame_id = self.frame_id
out.header.stamp = rospy.Time.now()
out.time_ref = ros_time_from_sbp_time(msg)
out.source = "gps"
self.pub_time.publish(out)
def callback_sbp_baseline(self, msg, **metadata):
if self.debug:
rospy.loginfo("Received SBP_MSG_BASELINE_NED (Sender: %d): %s" % (msg.sender, repr(msg)))
if self.publish_rtk_child_tf:
self.base_link_transform.header.stamp = rospy.Time.now()
self.base_link_transform.transform.translation.x = msg.e/1000.0
self.base_link_transform.transform.translation.y = msg.n/1000.0
self.base_link_transform.transform.translation.z = -msg.d/1000.0
self.tf_br.sendTransform(self.base_link_transform)
self.last_baseline = msg
self.publish_odom()
rigid_transform_listener.py 文件源码
项目:autolab_core
作者: BerkeleyAutomation
项目源码
文件源码
阅读 15
收藏 0
点赞 0
评论 0
def handle_request(req):
trans = tfBuffer.lookup_transform(req.from_frame, req.to_frame, rospy.Time())
return RigidTransformListenerResponse(trans.transform.translation.x,
trans.transform.translation.y,
trans.transform.translation.z,
trans.transform.rotation.w,
trans.transform.rotation.x,
trans.transform.rotation.y,
trans.transform.rotation.z)
def _wait_for_tf_init(self):
"""
Waits until all needed frames are present in tf.
:rtype: None
"""
self.listener.waitForTransform(self.robot_base_frame, self.robot_effector_frame, rospy.Time(0), rospy.Duration(10))
self.listener.waitForTransform(self.tracking_base_frame, self.tracking_marker_frame, rospy.Time(0),
rospy.Duration(60))
def _wait_for_transforms(self):
"""
Waits until the needed transformations are recent in tf.
:rtype: rospy.Time
"""
now = rospy.Time.now()
self.listener.waitForTransform(self.robot_base_frame, self.robot_effector_frame, now, rospy.Duration(10))
self.listener.waitForTransform(self.tracking_base_frame, self.tracking_marker_frame, now, rospy.Duration(10))
return now