Closed Carter90 closed 4 years ago
@baelinor should now work for rudimentary testing, tuning and clean up still in progress.
My ~workflow
#make sure to compile
# open lots of terminals and source in each
source ./devel/setup.bash
#run sim, @NOTE: I do run it differently for my system
./srcp2-competitors/docker/scripts/launch/roslaunch_docker --run-round 1
#runs the odom, obstacle, minicore, & driver nodes
roslaunch ./launch/scoot.launch "name:=scout_1"
#I don't use gazebo to see, this will open a camera view from the left camera
rosrun image_view image_view image:=/scout_1/camera/left/image_raw
# I suggest using the teleop to get fine motion to position obstacles
rosrun teleop_twist_keyboard teleop_twist_keyboard.py cmd_vel:=/scout_1/skid_cmd_vel
# echo out the obstacle being published / tested
rostopic echo /scout_1/obstacle
I suggest having the message file open for reference
SC2/src/obstacle/msg/Obstacles.msg
Fairly happy with it for now, should be enough for Bug0(as I understand it) and for correlated random walk. Will need to make changes to the driver for these messages (separate branch/pull)
When testing I would recommend a setup like this, with above comment commands running
All of the conditions could be true or none of them could be true. It is up to the behavior to decide what obstacles it cares about and uses the bitwise operators to determine that in driver.
So if say the left and right are true then you want the following operation; obstacles.PATH_IS_CLEAR | obstacles.LIDAR_RIGHT | obstacles.LIDAR_LEFT
assuming that is correct and the >/< signs are the right direction for left/right by reading through it makes sense.
Yeah if something was within both left and right warning_distance you would get PATH_IS_CLEAR | LIDAR_LEFT | LIDAR_RIGHT so 0 | 1 | 2 == 3
msg = 3
mask = 15
If something would physically block the forward movement of the rover within safe_distance you would get PATH_IS_CLEAR | LIDAR_BLOCK == 0|8 msg = 8 mask = 15
Cool, do you want to test it with the instructions and suggested layout above?
When I have some time, I can test it but it won't be till later. If you want a quicker response you might see if someone else is available. I think as long as anyone seconds it working is fine.
Looks good, logic sound - runs on my machine.
~~Still in progress, Currently tracking down an obstacle.msg import error
31
For now please review the logic outline~~
Ready