Being a product of the 1960's and a fan of science fiction films/series like Star Trek, Lost in Space, 2001: Space Odyssey, Space 1999, Silent Running, the idea of having a control surface full of multi-colored buttons seemed a natural approach for managing flying aircraft. Last week, I decided to design a web based UI that scratched that 1960's sci-fi itch, so to speak. I call it the Flying Robot Commander, with a wink and a nod to Johnny Sokko. The goal was to make a flexible web based UI that allowed for easy development of virtual control surfaces with nice big, colored buttons, sliders, etc... that easily integrate with Paparazzi UAV. Since it's delivered via a web browser, it works on any device that runs a browser(i,e. touch screens, touch devices, traditional laptops/desktops). Here's the a video of the first ever live test of the FRC(flying robot commander). Unfortunately, the rainy weather kept the first demo limited to simple arming/disarming of motors. The weather folks promise that we will be getting a few rainless days soon, so stay tuned for a follow-up video with multiple aircraft in the air under the tutelage the Flying Robot Commander. Giant robot, launch! ~HooperFly

Views: 1817


Moderator
Comment by Vladimir "Lazy" Khudyakov on December 31, 2015 at 10:13am

Amazing GCS realization!

Happy New Year !


Developer
Comment by Randy on December 31, 2015 at 6:55pm

Really cool in many ways.  The star-trek inspired interface is fun but also looks very functional when it comes to multiple vehicles.  The ability to bind the buttons to the biug buttons is also nice.  Add one more higher level (the ability to make multiple groups of vehicles) and a way for a single controller to be used to control any one of the vehicles (with another column of buttons) and Sulu and Chekov will be able to effectively control a fleet of drones.

Comment by earthpatrol on December 31, 2015 at 7:53pm

@randy the "Launch", "Flight", "Landing" buttons are meta-buttons/grouped buttons, the video doesn't explain it very well as it was a live Periscope video and I was just rambling a stream of consciousness. :)
The interface embodies pages, groups and hierarchy of buttons, as well as UI skinning of the interface. It makes it easy to build variant control interfaces that are late binding, since they are abstracted at the messaging interface. The decoupled architecture gives the UI developer freedom to implement in their favorite languages/frameworks: ruby, sinatra, python, flask,  java, javascript, C, C++, OCAML, RUST, bash, curl, etc.... 
Another benefit, with respect to interfacing with Paparazzi, is that you can trigger sophisticated flight behaviors contained in flight blocks providing another level of abstraction. As I develop new UI use cases, I'll do my best to share them with the group. There are many more to come. :)  
Happy New Year and Cheers to the DIYD community!

Comment by earthpatrol on December 31, 2015 at 9:15pm

Here's one way to use the Flying Robot Commander to manage 12 multirotors, in 4 groups of 3 aircraft by just leveraging multiple browser panes. Note, each group could have variant behavior as well. You could also divide workflow by mission sequence, launch, flight, landing. In theory you could build your own Space-X control room using this architecture, slicing and dicing based on each users needs.


Developer
Comment by Randy on January 1, 2016 at 12:10am

Thanks for the extra info.  Very nice!

Comment by simonl on January 1, 2016 at 11:12am

This is really cool :-) Will you be sharing any more details on how you coded it?

Comment by earthpatrol on January 1, 2016 at 1:19pm

@simoni, eventually it wall all be pushed to the Paparazzi UAV github. Stay tuned.... 

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service