Re: [Flightgear-devel] Approach ATC ideas: usin g real SID/STARs inFlightGear?
Thanks for your answers. > hope my solution could solve these problem and allow you to continue in > your great idea. Ah, great! > > -> direct link to the files: > http://www.xpgoodway.com/modules.php?name=Downloads&d_op=getit&lid=101 > -> my script (perl): > http://seb.marque.free.fr/fichiers/scripts/perl/dev/plandevol-eng-dev > SID/STAR data looks pretty and easy to parse. Thank you. I'll try to use this data. So, the question about including this data in FG is open. Best, Daniyar - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
[Flightgear-devel] Approach ATC ideas: usin g real SID/STARs in FlightGear?
Hi, now i'm working on Approach Control (ATC). There is some old, dead (not working) code in approach.cxx. I made it working last week, but there are a lot of bugs. So, maybe i'll rewrite this part of FG. And wanted to disscuss about some new features and ideas. In real life, pilots (and ATC) uses terminal procedures of each airport when approaching or departing. Example for KSFO: http://flightaware.com/resources/airport/KSFO#terminalprocedures What about adding real SID/STAR procedures to FG? This will make flying and communicating with ATC in FG more realistic. But there are three problems (as i understand this): 1. Where to find the database of SID/STAR of *all* airports? 2. Database will be large. So we will have another big file in FG distibutive, such as nav.dat.gz, awy.dat.gz, etc. This means that FG will get more time to start and will use more memory (?). 3. Copyrights and law. Is it ok to use this type of data in FG? Won't we have law problems with other authors? Ok, i tried to find some info about this. There's an interesting site http://aviationtoolbox.org/ . It includes SID/STAR and lot of other interesting information. But only USA. Maybe then we will find other world ? Here is some interesting data, dated December 2006 and January 2007: http://aviationtoolbox.org/old/ATA-100/ It's great that there are description of data formats and all data is in plain text, so we can parse it very easy! And convert to other formats we need. But is it ok to use this data? And what about other problems (such as big size, other countries and copyrights)? Best, Daniyar - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Tower Control (ATC) patc h
> Thanks. Committed. (Both branches, because of the contained > bugfixes.) Nice new features! I made some more minor changes > (mostly simplification and cosmetics), and hope I didn't break > anything. Good news. Thank you :) Seems like i'm on a right way and will continue working on it. > Now I'd like ATC to also give me departure/takeoff clearance > after I have landed. At the moment the logic seems to end here > "No transmission available". :-) > It's easy to fix this. I'll include it in next patch. All the best, Daniyar - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Tower Control (ATC) patc h
AJ, Melchior, Thanks for your answers. > The code isn't yet fit for CVS, though. There are some > things to fix and to clean up, I already wrote about this :) Please double check my code before adding! I'm newbie and i really need your advices (about writing better code), such as: > such as > > char buf[10]; > string tempstr1 = buf; > ... > sprintf(buf, "%i", int(speed)); > Oh, i copy-pasted this code from other parts of FG ;) > The FGTower::GetATISID() function could be made a lot > shorter (3 lines) and faster, FGTower::GetWeather() is > a bit cheesy, etc. More details off-list. :-) > Please, if it will not be very difficult, maybe somebody will tell me how to make the things you wrote about? And if somebody will make big changes, please add comments. I want to understand the logic :) thank you. Daniyar - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
[Flightgear-devel] Tower Control (ATC) patch
Hi, http://cqrit.anarxi.st/fg/tower_atc_patch.tar.gz This patch contains bugfixes from my previous patch (i made mistakes when using "diff" utility last time): 1. Now ATC do not tells us to go around because of traffic on RWy, when that traffic is WE. 2. Now ATC don't say that we must follow ourself (like "GFS, number two, follow GFS on final"). And new Tower-ATC features: 1. Requesting departure clearance. When you are on taxiway, you can request departure clearance. Tower will answer with something like: "Line up runway two eight right". TODO: check if any AI-Planes on final and tell something like: "After the landing AI-CALLSIGN line up runway two eight right". 2. Requesting take-off clearance. If you are on runway, you can tell to ATC that you are ready for take-off. So, Tower will tell you that you are cleared for take-off (or immediate take-off). 3. Reporting landing gear position on final by pilot. If you are on aircraft, which landing gear can be UP, when reporting final you will tell "Gear down, ready to land". 4. Reporting landing gear position on final by ATC. When i was newbie and was flying on Cessna 310, i ALWAYS forgot landing gears on final. Now if you are on final and forgot landing gear, Tower will tell you: "LANDING GEAR APPEARS UP" or "Check wheels down and locked". So you will have some time to push gear down or execute missed approach ;) 5. ATIS phonetic ID in requesting landing message. In FG pilots says: "for full stop with ATIS" everytime (when airport doesn't have ATIS too). But in real life pilot saying phonetic ID of ATIS message. Now we have: "for full stop, information alpha ... / ... zulu". If airport doesn't have ATIS, pilot don't say this. TODO: add this feature to AI-Planes too. 6. Advising weather condition in airport by Tower. If you are requesting take-off or landing in airport that doesn't have ATIS service, Tower will tell you about wind direction and speed, visibility and QFE. 7. Reporting downwind if missed approach. When some AI-Plane is on final FG's ATC tell you to "continue approach". And then you lost radio transmission. Now ATC says: "continue approach and report left/right downwind". And now we have "Report Downwind" entry (button) in "ATC Communication" form. I also added tower.cxx and tower.hxx in archive (if made mistakes when using "diff" ;) ). Sorry for bad English. All the best, Daniyar - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Air Traffic Control (ATC ). Fixing bugs andadding new features.
Thanks for your answer. Last week i realised requesting departure and take-off clearance for Tower-ATC. Now i'm working on requesting landing for Approach-ATC. User will choose what type of approach he want to make: ILS (if so), NDB (if so), VFR (already realised in FG ;)), etc... Will send the patches when will end this work. Best, Daniyar -Original Message- From: Melchior FRANZ <[EMAIL PROTECTED]> To: flightgear-devel@lists.sourceforge.net Date: Sun, 27 Jan 2008 23:16:42 +0100 Subject: Re: [Flightgear-devel] Air Traffic Control (ATC). Fixing bugs andadding new features. > > * Daniyar Atadjanov -- Saturday 19 January 2008: > > This (attached) diff fixes only two (little) bugs in Tower-ATC: > > Ah, great. (Will commit after testing.) > > > > > But this is a very little changes. What about other new feature to > > make ATC more realistic? > > This whole subsystem isn't maintained at the moment. You can make > whatever changes are useful, or even rewrite the whole system. > > m. > - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] Air Traffic Control (ATC ). Fixing bugs andadding new features.
Hi AJ, > I seem to have become more interested in modelling aircraft and systems than > flying in FG now, but one thing that always seemed lacking was any kind of > taxi/takeoff clearance. I've not used FG's ATC for a long time, but as far > as I'm aware this is still missing. Yes, take-off clearance are now missing in FG's ATC. As i saw in sources, take-off clearance is implemented in FG, but really doesn't work. Maybe it worked long time ago. I'll try to understand old code and fix problems. What about taxi... As i know, Ground-ATC works (?) only in KEMT-airport. So, maybe add some random messages like "Cleared to taxi to GA parking" (now this works only in airports without Ground-ATC), "Taxi to the end of RWy 28R", etc ? Best, Daniyar - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
[Flightgear-devel] Air Traffic Control (ATC). Fixing bugs and adding new features.
Hi, i'm newbie in FG development (just subscribed to this mailing list) and in C/C++ programming, but i'm interested in making FG's ATC more usefull and realistic. I learned the code and read comments in /src/ATC/* files and have some ideas about adding new interesting features to FG's ATC. This (attached) diff fixes only two (little) bugs in Tower-ATC: 1. Sometimes ATC tells you to follow yourself when you report Downwind, like: "GFS, number two, follow GFS on base/final/other leg". 2. When ATC tells you to go around because of traffic, but that traffic is you! My ideas (something of this i already wrote and there's a code): 1. Requesting weather codition in airport. Some airports don't have ATIS, so you can ask ATC: "Please advise weather condition" and ATC answers: active runway, wind heading and speed, visibility, QFE... 2. When aircraft requests landing, pilot says: "for full stop with ATIS", but in reallife he must say: "information Bravo/Charlie/Delta/etc". I added this changes to FG. 3. Now ATC knows only two answers when requesting landing: "report straight-in" and "report downwind". What about other legs, turns and vectoring? Like: "Turn left heading 120 degrees until advised" or "Turn right heading 10 degrees for landing runway 28R, report final" ? 4. Then i added some checkings of landing gear position and when reporting final pilot can say: "Gear down, ready to land". 5. If you forgot gear on final, ATC can report you: "Your landing gear appears up". But this is a very little changes. What about other new feature to make ATC more realistic? Please tell your ideas and advices about adding changes to ATC. What would you like to see in FG's ATC? Thank you and sorry for my bad English :) Best, Daniyar --- src/ATC/tower.cxx 2008-01-19 16:36:42.0 +0500 +++ ../fgfs-cvs-last/src/ATC/tower.cxx 2007-05-10 01:41:08.0 +0500 @@ -613,7 +613,7 @@ doThresholdETACalc(); TowerPlaneRec* tf = NULL; for(tower_plane_rec_list_iterator twrItr = appList.begin(); twrItr != appList.end(); twrItr++) { - if((*twrItr)->eta < (t->eta + 45) && strcmp ( (*twrItr)->plane.callsign.c_str(), t->plane.callsign.c_str() ) != 0) { // "strcmp" added to fix bug when ATC says that you must follow yourself + if((*twrItr)->eta < (t->eta + 45)) { a++; tf = *twrItr; cf = true; @@ -1057,28 +1057,18 @@ // eg. is the plane accelerating down the runway taking off [OK], // or stationary near the start [V. BAD!!]. // For now this should stop the AI plane landing on top of the user. -tower_plane_rec_list_iterator twrItr; -twrItr = rwyList.begin(); -TowerPlaneRec* tpr = *twrItr; -if(strcmp ( tpr->plane.callsign.c_str(), t->plane.callsign.c_str() ) == 0 && rwyList.size() == 1){ - // Fixing bug when ATC says that we must go around because of traffic on rwy - // but that traffic is our plane! In future we can use this expression - // for other ATC-messages like "On ground at 46, vacate left." -} -else{ - string trns = t->plane.callsign; - trns += " GO AROUND TRAFFIC ON RUNWAY I REPEAT GO AROUND"; - pending_transmission = trns; - ImmediateTransmit(); - t->instructedToGoAround = true; - t->clearedToLand = false; - // Assume it complies!!! - t->opType = CIRCUIT; - t->leg = CLIMBOUT; - if(t->planePtr) { - //cout << "Registering Go-around transmission with AI plane\n"; - t->planePtr->RegisterTransmission(13); - } +string trns = t->plane.callsign; +trns += " GO AROUND TRAFFIC ON RUNWAY I REPEAT GO AROUND"; +pending_transmission = trns; +ImmediateTransmit(); +t->instructedToGoAround = true; +t->clearedToLand = false; +// Assume it complies!!! +t->opType = CIRCUIT; +t->leg = CLIMBOUT; +if(t->planePtr) { + //cout << "Registering Go-around transmission with AI plane\n"; + t->planePtr->RegisterTransmission(13); } } else if(!t->clearedToLand) { // The whip through the appList is a hack since currently t->nextOnRwy doesn't always work @@ -1217,34 +1207,24 @@ // eg. is the plane accelerating down the runway taking off [OK], // or stationary near the start [V. BAD!!]. // For now this should stop the AI plane landing on top of the user. - tower_plane_rec_list_iterator twrItr; - twrItr = rwyList.begin(); - TowerPlaneRec* tpr = *twrItr; - if(strcmp ( tpr->plane.callsign.c_str(), t->plane.callsign.c_str() ) == 0 && rwyList.size() == 1){ - // Fixing bug when ATC says that we must go around because of traffic on rwy - // but that traffic is our plane! In future we can use this expression - // for other ATC-messages like "On ground at 46, vacate left." - } - else{ -string trns = t->plane.callsign; -trns += " GO AROUND TRAFFIC ON RUNWAY I REPEAT GO AROUND"; -pending_transmission = trns; -ImmediateTransmit(); -t->instructedToGoAround = true; -t->clearedToLand = fa