Suggestion: Add automatic performance calculator to aid reverse engineering #634
Replies: 6 comments 3 replies
-
@namoscagnm I'd be interested in working on this. In a similar vein I've been working on and off for a while on a tool to generate Energy Maneuverability diagrams based on specified aircraft performance, see https://github.com/seanmcleod/EMDiagrams/blob/master/EMDiagrams.ipynb I've also got an example of trying to match 'tales' of A4 roll performance with some recorded data and based on aerodynamic performance data from a NASA report. https://github.com/seanmcleod/JupyterFTE/blob/master/A4%20-%20Skyhawk%20Roll%20Performance.ipynb Lastly in the same repo (Jupyter FTE - Flight Test Engineering) you'll see some examples of trying to calculate level acceleration based on real FTI data recorded in a small aircraft, the Blackshape Prime. |
Beta Was this translation helpful? Give feedback.
-
Just to be clear, I don't see this being some integral feature of JSBSim, rather a separate tool either in the JSBSim repo like Aeromatic++ or in a separate repo like JSBSimCommander. In terms of 2nd link above unfortunately I don't see that as a particularly good example for the sort of tool we're talking about. The whole thread is about more subjective rather than objective observations, i.e. whether someone feels there is "too much" torque induced roll, the feel of the controls etc. I didn't see a specific example of someone pointing to the manufacturer's data saying that under these conditions (power, IAS, altitude etc.) the aircraft needs x amount of aileron or rudder trim from say official test data (a lot of data will only be available in the test reports/data during the test program, as opposed to ending up in the POH). In general handling qualities is going to be the trickiest. My idea with the JupyterFTE repo was to come up with a number of auto-pilots that could perform a number of test techniques, e.g. to perform the required test technique for level acceleration, then record the data and run it through the particular FTE analysis to derive the particular performance data to then compare to published performance data. So other examples would be calculating Example of a paper implementing a model and comparing it's |
Beta Was this translation helpful? Give feedback.
-
(Sorry @namoscagnm for having taken some time to respond) This tool could be helpful without doubts to check aircraft performance for particular circumstances. Whether aircraft developers will prefer using it or make tests and measurements in flight remains to be seen. Some measurements (such as drag, best glide ratio) are cumbersome to carry out in-flight, but flight tests enable to observe and check other features at the same time. For instance, the best glide ratio is the result of form drag and induced drag (amplitude dependence vs airspeed for each one). Adjusting form drag and induced drag to get the correct best glide ratio at the correct airspeed will not be enough to ensure the correct drag amplitude at every airspeed. This will still need many tests at other airspeeds. Granted, each individual test will be obtained (numerical values by calculation) more quickly than in the simulator. However, one has to enter the correct parameter set for each situation. The possible use by aircraft FDM developers (who do not need to be experts in computer language) would depend on its complexity and the more or less limited scope in results. Aircraft FDM developers need to know XML language (easy), XML instructions (not that easy, but unavoidable and can be learnt from FlightGear), and some nasal. Personally, I just have a basic nasal skill and almost no knowledge in C++ (just reading a few isolated lines). @namoscagnm wrote
Not exactly, not only based on hard "reverse engineering". Another difficulty, partly due to imperfections from the FDM itself, is that aircraft developers will always have to do compromises between the final criteria regarding different results. Obviously, this tool would not be usable for complicated behaviors like felt roughness at controls, stall and spin behavior, how to evaluate the adverse yaw ... Based on which criteria can one say that the stall behavior is realistic? |
Beta Was this translation helpful? Give feedback.
-
In general I see 3 cases:
$ \large p_{ss} = -\frac{2u_0}{b} \frac{C_{l \delta a}}{C_{lp}} \Delta \delta_a $ However in general this won't be easy to automate since there is so much flexibility in the way that users can enter their force and moment functions, it's not as if they simply fill in values for some well-known coefficients.
What I suggest we do is come up with say 5 example performance metrics as a starting point and use them to figure out how we would go about automating the collection of the required performance data. |
Beta Was this translation helpful? Give feedback.
-
Hi, I have talked to a university classmate who is now a test engineer at his country's airforce. He has planned and executed many tests with airforce pilots and he recommended two books describe which tests are relavant and how to perform it. It will be probably very useful to for us:
I am browsing thru the book from Kinberlin on my rate sparte time and its quite inspiring and simple... I think you will also enjoy it a lot, @seanmcleod |
Beta Was this translation helpful? Give feedback.
-
I'll take a look and see if I can find some excerpts from the books. Once you've gone through enough examples in the book then as I suggested I think you should propose say 5 specific performance tests and then we use those as a starting point to see how easy/difficult they would be to implement. |
Beta Was this translation helpful? Give feedback.
-
Hi, all.
Background:
I have observed that in FlightGear, some of the input values of the FDM dont have official documents as a direct source. Rather, they are based on hard "reverse engineering", trying to make the aircraft behave as some pilots says it should be, or by tweaking until some specific behavior from aircraft matches real life expectations.
If real life values were being inputted, there would be never a doubt on them, but as this is a result of hard reverse engineering work, sometimes it can happen that by adjusting some parameter, we are inadvertently getting some undesired side effects somewhere else.
Proposal:
To allow JSBSIM supporting "reverse engineering" by generating automatically some performance parameters which are easy to cross-check with airplanes Pilot Operating Handbook (specially on chapter 5, performance). For instance:
-JSBSIM could automatically generate best glide speed and ratio based on aerodynamic coefficients, so if some input data gives the best L/D of 13, but the real aircraft is known to have it at 20, the developer would automatically know that he did something wrong.
-JSBSIM could automatically generate the maximum aircraft service ceiling based on powerplant power avaiable and required power to mantain level flight
-JSBSIM could automatically generate maximum vx and vy for climb for a ISA atmosphere, so the designer could compare it against the POH
-JSBSIM could automatically generate many other standard performance behavior as is typically found on chapter 5 (performance) of many aircraft's Pilot Operating Handbook.
It would also be good if the designer set some goal values (for instance, 700 fpm max vertical climb on cessna 172 when using 75 knots kias), and jsbsim would perform an automated test to tell if this criteria has been met (inside some tolerance).
Expected benefit:
With his feature I believe that many regression bugs on aircraft performance would be caught before they entered into production, and would allow developers to adjust their models to implement pilots feedback more readily and lose the fear of inadvertently damaging their aircraft model.
Please, lets discuss if any idea is unclear :)
Thanks
Beta Was this translation helpful? Give feedback.
All reactions