Comments (3)
In my experiments I used robot odometery measurement.
loop__________
xnew <--- get trasformation between odom
and base_link
distance = norm ( xnew - xold)
total_distance = total_distance + distance
xold = xnew
endloop_________
This is a python script I wrote to do that:
#!/usr/bin/env python
# --------Include modules---------------
from copy import copy
import rospy
from visualization_msgs.msg import Marker
from std_msgs.msg import String
from geometry_msgs.msg import Point
from nav_msgs.msg import OccupancyGrid
import actionlib_msgs.msg
from move_base_msgs.msg import MoveBaseAction, MoveBaseGoal
import actionlib
import tf
from os import system
from random import random
from numpy import array, concatenate, vstack, delete, floor, ceil
from numpy import linalg as LA
from numpy import all as All
from time import time,sleep
# -----------------------------------------------------
# Node----------------------------------------------
def node():
rospy.init_node('distanceCounters', anonymous=False)
# -------------------------------------------
rate = rospy.Rate(50)
listener = tf.TransformListener()
sleep(1)
listener.waitForTransform('/odom', '/base_link',
rospy.Time(), rospy.Duration(10.0))
try:
(trans, rot) = listener.lookupTransform(
'/odom', '/base_link', rospy.Time(0))
except (tf.LookupException, tf.ConnectivityException, tf.ExtrapolationException):
trans = [0, 0]
xinx = trans[0]
xiny = trans[1]
xprev = array([xinx, xiny])
distance = 0
t0 = time()
# -------------------------------RRT------------------------------------------
while not rospy.is_shutdown():
listener.waitForTransform('/odom', '/base_link',
rospy.Time(), rospy.Duration(10.0))
try:
(trans, rot) = listener.lookupTransform(
'/odom', '/base_link', rospy.Time(0))
xinx = int(trans[0]*1000)/1000.0
xiny = int(trans[1]*1000)/1000.0
xnew = array([xinx, xiny])
distance += LA.norm(xnew-xprev)
print distance, " elapsed ", (time()-t0), " sec"
xprev = array([xinx, xiny])
except:
pass
rate.sleep()
# _____________________________________________________________________________
if __name__ == '__main__':
try:
node()
except rospy.ROSInterruptException:
pass
from rrt_exploration.
Sorry for the late reply.Thank you for your patience
from rrt_exploration.
@Mr-young-Hit
Hope my answer helped, Can close this issue?
from rrt_exploration.
Related Issues (19)
- Hello, hasauino! I have a weird problem when running this rrt_exploration package. HOT 8
- Is there any new version for ros-melodic in the future? HOT 1
- Rviz Tf error - map is not displayed- Need to couple Tf frames - basefootprint and map HOT 1
- Filter node: Unable to get filtered points HOT 4
- Hello, I have a issues when I run multi robots exploration. HOT 5
- Cannot locate message [points] in package [geometry_msgs] HOT 1
- rrt run in melodic HOT 2
- Hello, I have a problem when I run multi robots exploration HOT 1
- Can this package be used along with RTAB-Map?
- informationGain return 0 always HOT 2
- Is it possible to use RRT exploration on ROS noetic? HOT 5
- Frontiers not getting detected
- Running on melodic system, gmapping cannot be drawn
- how to save the map after gmapping? HOT 1
- Some doubts about the paper and code HOT 4
- How to launch rrt_exploration package for MiR using simple.launch HOT 8
- Client [/mir_auto_bagger] wants topic /move_base/goal to have datatype/md5sum HOT 1
- No frontier point is detected HOT 6
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 rrt_exploration.