Howdy all,
First, please forgive me if this is the wrong location to post this, I am posting this same question in ArduCopter/Simulation, GCS/Mission Planner, GCS/MAVLink, and GCS/MAVProxy just in case, because I can’t tell where the most appropriate place is.
Question: What methods/options are available to filter out radar data that is tracking the location of the drone you are controlling so that it doesn’t think it’s on a collision course with itself?
Example: I have a radar system setup immobile on the ground, as opposed to on the frame of the drone itself, so I can send radar data as if it were coming from ADSB, and sent via the MAVLink protocol. Let’s say this radar is tracking 3 different drones right now, one of which is the drone you are controlling. You want to send the index of drones (identical to the one created in ADSP.cpp, but instead of generated via ADSB, it’s generated from radar data and external calculations) to your drone so that it can perform the proper evasive maneuvers if necessary. Is there a way that I can either reliably keep the drone from thinking there is an obstacle at it’s exact location?
My thoughts/possible solutions:
-
Filter out drone information from even being sent by implementing some form of conditional, like “if obstacle has heading, location, and velocity within 10% of drone’s known heading, location, and velocity (hdv), erase radar message.” This way, that specific radar data is never even sent to the drone. But, a potential problem could be that a drone with a very similar hdv is ignored and could lead to a crash.
-
Similar to n.1, but instead, before the mission starts, place the drone near the radar and begin tracking it without sending any data. This way, the radar will assign the drone it’s uuid and obstacle tracking tag. Once that is established, tell the transmitter to not send any data with the drone’s known tag. Problem: I’m not even sure if this is doable.
-
Some way to give the hdv message from the radar that tracks your drone’s location a special tag so that it knows that message is refering to itself? I personally think this would be the most useful, because that way the drone has it’s own body reference frame/relative location from it’s onboard sensors, as well as it’s global reference frame/global location from the stationary radar. So essentially the message would have some kind of tag saying “hey, don’t freak out, this is not an obstacle, just your own hdv.” Problem: same as n.2, I don’t know if this is even possible, or how to do it. Does ArduPilot have some code in place to receive external radar messages and know which vehicle being tracked is actually itself? Is there a program that will match/convert/compare relative hdv’s to global hdv’s?
-
Same as n.1, except the decision is made by the drone, not the ground station, and all messages are sent, nothing is excluded.
Finally, what is what I’m trying to do even called? What do I google? I’m having some difficulty trying to research this, but it must be a very common problem.
What do y’all think of my tentative thoughts? I’d absolutely love to hear back, get a different perspective and learn something! I’m quite lost and would be very appreciate of all the help I can get!