Skip to content

Remove custom message dependencies#3

Open
ekampourakis wants to merge 3 commits into
MaxMagazin:masterfrom
ekampourakis:master
Open

Remove custom message dependencies#3
ekampourakis wants to merge 3 commits into
MaxMagazin:masterfrom
ekampourakis:master

Conversation

@ekampourakis

Copy link
Copy Markdown

As mentioned in this issue:

  • Removed all the custom message dependencies and replaced them with more generic messages from my vehicle which I also included. Please see the README.
  • Added 2 more parameters to make the package more versatile for different TF configurations.
  • Updated the README.

Please review this PR and let me know.

Best regards,
Manos

@MaxMagazin

Copy link
Copy Markdown
Owner

Hi @ekampourakis,
thanks for uploading your updates, I took a quick look on them. Generally I am fine with them, but have a couple of comments. Unfortunately I am a bit busy now with my work, will finish the code review in the weekend. Cheers.

@ekampourakis

Copy link
Copy Markdown
Author

Hello @MaxMagazin ,

I'm posting this comment as a reminder for you to review the code changes and notify me about accepting or rejecting them.

Thanks.

Comment thread src/inc/ma_rrt.py
@@ -1,433 +0,0 @@
"""

@MaxMagazin MaxMagazin May 10, 2020

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like you wanted to move this file to src folder, but you commited the deleting of this file. Are you sure the package works as it is in your fork (https://github.com/ekampourakis/ma_rrt_path_plan)?

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should complain in line 172 of MaRRTPathPlanNode.py, where
rrt = ma_rrt.RRT

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes you are absolutely right. It somehow got deleted. I removed the inc folder and added the file in the src folder directly because it was complaining. I fixed it in my fork.

Comment thread README.md

#### Inputs
- rospy.Subscriber("/map", Map, ...)
- rospy.Subscriber("/map", Track, ...)

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets have it consistent:
rospy.Subscriber("/track", Track, ...)

Comment thread README.md

#### Parameters to tune (main)
- `odom_topic` = `/odometry` - The topic to get the odometry information from
- `world_frame` = `world` - The world frame to use for the visualizations

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This parameters list was intended for algorithm parameters. I would leave this info out, or if you think it should be there in ReadMe, please move it to another section called Frames


<!-- TODO: Comment me out -->
<!-- <param name="odom_topic" value="/odometry/real"/>
<param name="world_frame" value="map"/> -->

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These three lines are confusing.

  1. For who is this TODO then if it is there
  2. Generally having the frames specified in launch files is cool, but the frames that you specified are unique to your system (again). For this purposes you could create a separate launch file, but I dont see a reason to have it this repo.

Comment thread src/MaRRTPathPlanNode.py
rospy.Subscriber("/map", Map, self.mapCallback)
rospy.Subscriber("/odometry", Odometry, self.odometryCallback)
# rospy.Subscriber("/car_sensors", CarSensors, self.carSensorsCallback)
rospy.Subscriber("/track", Track, self.mapCallback)

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once it is all about track (instead of map), lets have a new callback name too (self.trackCallback)

Comment thread src/MaRRTPathPlanNode.py

def mapCallback(self, map):
self.map = map
def mapCallback(self, track):

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

trackCallback

Comment thread src/MaRRTPathPlanNode.py
def mapCallback(self, map):
self.map = map
def mapCallback(self, track):
self.map = track.cones

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets have self.track (instead self.map)
and initialize it with received track object (not with cones directly)

Comment thread src/MaRRTPathPlanNode.py

frontConeList = []
for cone in map.cones:
for cone in map:

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

based on my other comments here will be:
for cone in track.cones
note, additional renamings are needed

Comment thread src/MaRRTPathPlanNode.py
coneList = []
radiusSq = radius * radius
for cone in map.cones:
for cone in map:

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see above:
for cone in track.cones

Comment thread src/MaRRTPathPlanNode.py
# rospy.Subscriber("/car_sensors", CarSensors, self.carSensorsCallback)
rospy.Subscriber("/track", Track, self.mapCallback)
rospy.Subscriber(self.odometry_topic, Odometry, self.odometryCallback)
rospy.Subscriber("/dvsim/cmd", Command, self.carSensorsCallback)

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't really use the steering angle of the car for path planning (this subscriber was even commented out, but I tried to use this information during my development).
But in your version it appears to be confusing: you subscribe to a topic (which generally means to get something), and you receive a command (which generally would be understood as control request).
Maybe message should be named a bit differently, what about CarState?

@MaxMagazin

Copy link
Copy Markdown
Owner

Hey @ekampourakis, I added a few comments about the changes. My main concern is that some your changes are still unique and specific to your system, which do not help to improve generalization of the package. Although, the messages you created are the nice contribution, thank you for that.
If you don't feel like contributing more, I could still merge the PR as it is right now, but most probably will update/revert/improve a couple of your changes later. No worries, I would still mention you in contributors list later.

@ekampourakis

Copy link
Copy Markdown
Author

@MaxMagazin Thanks for all the comments. I will look at them all and try to correct them but it will take some time as I'm working on many other projects as well.

Don't close the PR just yet if you don't need to and I'll keep updating my fork until all your suggestions are implemented.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants