-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Model submission for Trailer sensor config 1 by CTU-CRAS-Norlab #870
base: master
Are you sure you want to change the base?
Conversation
# Conflicts: # subt_ign/launch/cloudsim_sim.ign # subt_ign/launch/competition.ign
I downgraded model.sdf to SDF version 1.6 as requested for all our models. |
We recognize the value of having a virtual representation of a communications tether, but there are some issues with the implementation as modeled in this PR.
This model will not be incorporated for the Virtual Competition, but we appreciate the effort to create a virtual analog for the detachable communications tether. In case other groups find it valuable to test with outside of competition, we would recommend uploading this model to Ignition Fuel (see instructions here) and linking to your forked repository in the model description. |
@angelacmaio that's a pity... the implementation in this PR has been open for discussion. I'm ready to reimplement it in some safer ways. I just wanted your hints in what direction you would like the implementation to go as there are multiple ways. The rope could maybe be better simulated utilizing the precomputed communication distance map, but I didn't know how... |
One idea I had was to utilize the precomputed distance maps used for the comms model. But I don't know how to access them from the model. |
Interesting idea @peci1 . I agree with @angelacmaio on the main two limitations. Below are some extra comments:
|
This PR adds a passive vehicle that carries a large comms node and can be dragged behind a UGV the same way car trailers do.
To get a better reward than being a large breadcrumb, I added an exception to subt comms broker for this robot. If (and only if) it is within 100 m from teambase, it uses a communication "side channel" that is not limited by bandwidth and that has almost no packet loss. When it leaves the 100 m radius, it uses standard subt comms model. This exception tries to mimick a 100 m-long 2-wire connection with the teambase.
The exception from comms broker is acknowledged based on the names of communicating endpoints and their distance. Teambase has to be named
TEAMBASE
and the trailer has to be namedCOMMS_EXTENDER
. See the README.md of the commited package for instructions on how to test this.I'm open to discussing how to best implement the exception in comms broker. What you see is the simplest option I came up with, but it e.g. allows any type of robot to utilize this property if it is named correctly.
The trailer is added as a possible marsupial child to many CTU-CRAS-Norlab UGVs. Opposite to UAVs, the best attachment point for the trailer is on the rear of the robot and not on its top. "Fortunately", none of our robots were allowed to carry children, so I specified the marsupial attachment point on their rear. But maybe (maybe?) we will want to also make MARV able to carry a UAV. Then it would need some more clever logic in the spawn script. But so far I leave it as it is.