Zhiquan Yeo's Posts (2)

Sort by

Flex 4 GCS Update


This should have come out yesterday but admissions essays got in the way. Anyway, I updated the GCS, and now it supports waypoint-ing by clicking on the map. You can also insert waypoints in between existing ones by using the Add Before/Add After buttons. Delete waypoints by using the shiny red button.

To set up options for takeoff and landing, click "Takeoff / Landing Options". You'll be shown a screen like this:


... where you'll be able to set the takeoff pitch and altitude, as well as add CMD_LAND_OPTIONS entries. Fill in the boxes and click Add Landing Option, and it'll be automatically added to the list. The list is held in sorted order. To delete an option, select it and hit the 'Delete' or 'Backspace' keys on your keyboard.


Finally, You can export your mission to a waypoint writer file. I've only exported to the mission[][5] array, so you'll need to create the file and then copy and paste it in.



If you're using the GPS Simulator with this, and suddenly see the CDI (lowest instrument on the left) needles suddenly jerk around, just ignore it for now. I'll add in functionality so that the CDI will show your deviation from the plotted mission soon.


The updated .AIR file can be found here: http://zhiquanyeo.com/apm-gcs/APM_GCS_ControlStation.air


Have fun and as usual, let me know if there are any bugs, or comments :)
Read more…

Uhm.. another GCS???

"3689379691?profile=original
Uhm yeah hi, I'm ZQ, long time lurker, first time poster..."

Well, this is what happens when a recently graduated grad student gets bored, likes aviation and is trying to learn a new language/framework. So, here's some looks at a GCS for APM written in... *shudder* Adobe Flex 4. Before I get slammed, the only reason I'm writing it in Flex 4 is because I'm planning on using it for some other projects and need to get used to it, plus with Adobe AIR, it can run on desktops. (That and I have a slight aversion to C++).

The instruments are configurable (e.g. you can change the speed ranges on the ASI, etc), and it uses google maps for the waypoint system. It'll support (eventually, once I finish writing it) all the commands present in the APM command list. Communication can be done over serial, with the use of serproxy (as Flex/AIR doesn't have access to a serial port directly). I'm also planning to add a vertical profile plotting capability to the GCS, but that will come a little bit later.

Additionally, I whipped up a GPS/IMU simulator in Flex as well, to test out the packet communication and position plotting on the GCS. The simulator allows you to plot waypoints, and select an update rate, and it will broadcast position, speed, altitude and IMU information in APM binary format over a network connection. You can also connect multiple clients to the GPS Simulator and they'll all get the same information.

So without further ado, here are some screen shots, and I'll update more shortly (and put up .air packages if there is interest).


GCS Screen (Still a bit empty right now)


GPS Simulator


What happens when you want to see interesting patterns



Installation Instructions:

Download the .air files from:

http://zhiquanyeo.com/apm-gcs/APM_GCS_GPS_Emulator.air

http://zhiquanyeo.com/apm-gcs/APM_GCS_ControlStation.air


You will need the AIR 2 runtime available from http://get.adobe.com/air/


Usage:
Start up the waypoint simulator and click to add waypoints. The delete and add before/after functionality doesnt work yet (oops). You can click on a waypoint on the map or in the list to select it and change the altitude. Waypoints are draggable on the map.

When you are ready for clients to connect, enter the port number you want in the textbox and click "Start Listening"

Start up the GCS and set up the correct port number in the box. Then click connect. You should see "Connected!", otherwise check your port settings. Then click "Start Simulation" in the GPS Simulator and watch the fun happen.

Note: The menus don't work, and things might be prone to breaking (cos.. you know, grad students are horrible coders). If you find any bugs or crashes, let me know and I'll add them to my (ever-growing) TODO list.
Read more…