For some tasks (like Search and Rescue and mapping) what you can do with one vehicle, you can probably do faster with multiple vehicles. To test how well it works in practice I tested controlling three Pixhawk powered IRISs at the same time from the Mission Planner using an Antenna Tracker and six 3DR radios (jump here to skip the intro). A transmitter was attached but I didn't use it.
This test was done with APM:Copter 3.3-rc3 (AC3.2.1 should also work), Antenna Tracker 0.7 (ver 0.6 will work but only for two vehicles), and the latest Mission Planner.
The setup was:
- Each vehicle had a 3DR radio which was paired to a 3DR radio on the antenna tracker. Before the test I connected to each 3DR radio individually once and set their NetIDs to be "23" for the first IRIS and 1st 3DR radio on the tracker, "24" for the second pair, "25" for the 3rd pair.
- The 3DR radios on the tracker were plugged into the Tracker Pixhawk's Telem1, Telem2 and Serial 4/5 ports.
- Changed the Tracker Pixhawk's SERIAL4_PROTOCOL to "1" to redefine the Serial 4/5 port as a MAVLink channel (this is the new piece that's not available in Tracker 0.6 but will be released very soon).
- Connected the Tracker to my Windows PC using a USB cable
To control the vehicles, I:
- plugged in all three vehicles, started MissionPlanner and connected to the tracker and voila! All four vehicles (tracker + 3 IRISs) appeared on the map.
- switched between vehicles using the MP's hidden "Ctrl-X" keystroke. When you switch, the map re-centers on the new vehicle and the HUD, action tabs, etc all show information or allow control of that vehicle.
- The MP's dataflash screen's Action tab can be used to arm the vehicles, and right-mouse-button-clicking on the map and selecting "Take-off" allowed me to get the vehicles into the air without touching the RC transmitter.
- Used the action tab to change each vehicle into "AUTO" mode. I could have done other things like drag them around individually in Guided mode too.
Of course, there were some issues (I ran the test 3 times, the video is from the 2nd time). The biggest problem was that there was too much network traffic clogging up the 3DR radio links so sometimes the vehicle wouldn't respond quickly to the actions sent from the mission planner. So in my first test it was hard to arm and take-off before the vehicle auto-disarmed. We think the issue is that I didn't reduce the data rate and the antenna tracker combines all mavlink streams and then resends them out on all channels. This means a lot of bandwidth is being wasted sending, for example, copter's #1's position to copter #2. We probably want some vehicle information (like position) sent to all vehicles but other data (like IMU readings) isn't useful.
Another small issue was the Mission Planner would not let me send new commands until the last command was accepted/rejected by the vehicle. Makes sense in a single vehicle environment, but at times I wanted to submit a command to each vehicle in rapid succession without waiting for the first vehicle's response.
If I was going to do this often, I would change the setup so that there was a single TX/RX for each vehicle to allow faster manual take-over of a single vehicle. I could of course bring all three vehicles down by switching to stabilize and cutting the throttle, or I could switch a single vehicle to Loiter through the MP and then take-over with the RC but that's all a little clunky in an emergency situation.
I might also use RFD900 radios (or re-flash the 3DR radios with the RFD900 firmware) which would remove the need for the antenna tracker completely because it support multi-point communication.
So some more work to do including getting other GCSs like Droid Planner to handle multiple vehicles as well as the MP but still, I was pretty happy that it worked and I wanted others to know that this multi-vehicle style flying is possible.
Comments
Yes, I'd say one of the main difference between Chris's rover demo and this one is that in this test the Tracker's pixhawk is in the middle instead of the mission planner AND all vehicles have access to all the other vehicle's information (although they don't make use of it).
I mentioned it above but .. because I like saying it... it doesn't need to be the antenna tracker that's in the middle, it could be one of the other vehicles. So it opens up lots of other opportunities .. like two vehicles flying together and talking to each other even when they fly outside of GCS range... or extending the overall telemetry range of a mission by daisy-chaining the telemetry links of the vehicles together.
OG: Swarming has been supported on APM/Mission Planner since 2013 (see demos here). What Randy is demoing here is advanced used of that with the antenna tracker
We've kind of found the congestion on the telemetry radios as one of the things currently limiting how many simultaneous vehicles we can control. They aren't rebroadcasting all the data from each vehicle, but they seem to be stomping on each other trying to use the same bandwidth.
@Tiziano,
No immediately plans to test with mixed vehicles but that's mostly because I only have copters. I'm sure it'll work.
One thing I didn't mention is that the ability to combine telemetry streams is not special to the AntennaTracker. Plane, Rover and Copter can do it to. So you could, for example, have a sort of daisy chain where each vehicle talks to two other vehicles and then just one vehicle has a connection to the ground station. That could be useful if you wanted to go much further than your radios would normally allow due to obstructions at ground level.
Multiple vehicles, multiple payloads... lots of interesting things are possible. Are you willing to test a mixed configuration? Multi rotor and fixed wing?
That was a pretty hard yard to land in, with GPS.
Awesome Randy!
I've been doing something similar to this but simpler, by-passing mission planner except for one copter: Control three copters with just one radio (taranis). I have all three with auto missions and software failsafes set to "continue in auto". I start one (auto) , then switch to second model on the radio (which triggers failsafe on the first so the first continues auto mission on the radio and start the second, then switch to third model and start the third one. At any time I can get out of auto and control any one of them manually. The downside is that I can only follow one on mission planner ...
I used this to take pictures in the air of other copters, I would position the copters manually (didn't quite trust auto positioning as I wanted them close) then move to auto which was just simply loiter at same place and altitude. The one tricky thing was to make sure that throttle is at mid level when switching from one copter to the other on the radio ...
@Chris,
I originally tried (months back) with both AP Planner 2 and Droid Planner (but not QGroundControl) before asking Michael to extend MP. AP Planner 2 was ok - it has nice sub-windows that show up on the map for each vehicle and these give both high level vehicle information (i.e. flight mode, altitude, arm state) and when the user clicks on them it immediately changes which vehicle you're controlling. The problem was that (at that time at least) AP Planner 2 was suffering from reliability problems.
The MP interface isn't super easy but I really appreciate how quickly Michael got the features working and how responsive he is to any issues that come up. For example, since I produced the video, he's added a little number display to each vehicle so you can tell them apart on the map.
@Doug,
Yes that's a good idea. The aux channels could also be used in place of ch5. I think if anyone tries to repeat this test and wants that feature I'll add it.
@dr0n3droid,
Yes, flying multiple vehicles with just a TX is tough. There's a wiki page now which shows how I did the setup for this test.
Randy, given that APM Planner and QGroundControl were designed with a multi-UAV architecture at the core, would this have been easier if you had used them rather than Mission Planner?