Re: [Flightgear-devel] p51d-jsbsim merge request
> From: Hal V. Engel [mailto:hven...@gmail.com] > > snip > > > Property /engines/engine[0]/mp-inhg is already defined. > > Property /engines/engine/oil-temperature-degf is already defined. > > Property /controls/fuel/tank-selector is already defined. > > Property /controls/engines/engine/throttle is already defined. > > Property ap/ap_map_hold is already defined. > > Property ap/throttle-cmd-norm is already defined. > > The above happen when I forward declare these in the JSBSIm xml files > to avoid messages like the next message. > > > FGPropertyManager::GetNode() No node found for ap/map-error > > In condition: ap/map-error LT 0.0. Unknown property ap/map-error > > referenced. Creating property. Check usage. > > > Failed to tie property ap/throttle-cmd-out to object methods > > Failed to tie property ap/cooling-cmd-out to object methods > > I don't know why the "Failed to tie.." messages are happening. The two > above are from two jsbsim autopilots that are part of the engine control > systems. > One is for the auto manifold pressure system and the second is for the > automatic coolant temperature controls. Both systems work in spite of these > messages. I would like to eliminate these messages. Can someone give > me a clue what to look for? Hal, Some time ago we (I) added some checks to prevent problems with config files due to spelling errors. Sometimes things can get misspelled and there is no warning to the user, nor any obvious ill effects. The way that the property system is supposed to work (to my recollection) is that it should not matter in which order properties are declared, and when a property is encountered that has not been referenced before, the property is simply created. This is both useful and dangerous, as we have seen. So, what we did to try and prevent problems is to notify the user when a property is being defined that has already been defined, or when a property is referenced that has not been created. Unfortunately, it can be problematic when a property is created on the FlightGear side, but used in the JSBSim side, if one wants to use the aircraft model in both FlightGear and in standalone JSBSim - or in another simulation architecture (which would not have nasal support, FWIW). The system we have set up for handling presumed property creation problems probably is not perfect, and it can be excessively wordy. We might find a way to suppress the messages, but I'd want to take another look at them and make sure I understand why the messages are being shown. Some of them don't look harmless. Jon -- Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] p51d-jsbsim merge request
> I took a closer look and it appears that I missed the > Aircraft/p51d/Models/induction-air-hotspots.xml file when I was checking in > my > changes. I have checked this into my fgdata clone and I will be requesting a > merge into fgdata to get it into place shortly. Not sure how I missed it. > > Hal Ah, much better now. At least the aircraft loads well! Still get quite some errors though. It ain't nice, but it works ;) Property /engines/engine[0]/mp-inhg is already defined. Property /engines/engine/oil-temperature-degf is already defined. Property /controls/fuel/tank-selector is already defined. Property /controls/engines/engine/throttle is already defined. Property ap/ap_map_hold is already defined. Property ap/throttle-cmd-norm is already defined. FGPropertyManager::GetNode() No node found for ap/map-error In condition: ap/map-error LT 0.0. Unknown property ap/map-error referenced. Creating property. Check usage. Failed to tie property ap/throttle-cmd-out to object methods Failed to tie property ap/cooling-cmd-out to object methods Property propulsion/tank/priority is already defined. Property propulsion/tank[1]/priority is already defined. Property propulsion/tank[2]/priority is already defined. Property propulsion/tank[3]/priority is already defined. Property propulsion/tank[4]/priority is already defined. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[8]/count In condition: /ai/submodels/submodel[8]/count == 1. Unknown property /ai/submodels/submodel[8]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[9]/count In condition: /ai/submodels/submodel[9]/count == 1. Unknown property /ai/submodels/submodel[9]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[10]/count In condition: /ai/submodels/submodel[10]/count == 1. Unknown property /ai/submodels/submodel[10]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[11]/count In condition: /ai/submodels/submodel[11]/count == 1. Unknown property /ai/submodels/submodel[11]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[12]/count In condition: /ai/submodels/submodel[12]/count == 1. Unknown property /ai/submodels/submodel[12]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[13]/count In condition: /ai/submodels/submodel[13]/count == 1. Unknown property /ai/submodels/submodel[13]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[14]/count In condition: /ai/submodels/submodel[14]/count == 1. Unknown property /ai/submodels/submodel[14]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[15]/count In condition: /ai/submodels/submodel[15]/count == 1. Unknown property /ai/submodels/submodel[15]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[16]/count In condition: /ai/submodels/submodel[16]/count == 1. Unknown property /ai/submodels/submodel[16]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[17]/count In condition: /ai/submodels/submodel[17]/count == 1. Unknown property /ai/submodels/submodel[17]/count referenced. Creating property. Check usage. Failed to tie property fcs/sine-wave-generator to object methods Property /ai/submodels/submodel[1]/count is already defined. Property /ai/submodels/submodel[8]/count is already defined. Property /ai/submodels/submodel[9]/count is already defined. Property /ai/submodels/submodel[10]/count is already defined. Property /ai/submodels/submodel[11]/count is already defined. Property /ai/submodels/submodel[12]/count is already defined. Property /ai/submodels/submodel[13]/count is already defined. Property /ai/submodels/submodel[14]/count is already defined. Property /ai/submodels/submodel[15]/count is already defined. Property /ai/submodels/submodel[16]/count is already defined. Property /ai/submodels/submodel[17]/count is already defined. Property /controls/gear/brake-left is already defined. Property /controls/gear/brake-right is already defined. Property /controls/gear/brake-parking is already defined. Failed to tie property fcs/elevator-control to object methods -- Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate data
Re: [Flightgear-devel] p51d-jsbsim merge request
Hal wrote ... snip > I have the merge request in. > Done - seems to fix the problem. That really ugly chap is still there though :-). Vivian -- Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] p51d-jsbsim merge request
Hal > > On Sunday, December 26, 2010 10:34:52 am Hal V. Engel wrote: > > On Sunday, December 26, 2010 08:09:00 am Gijs de Rooy wrote: > > > Hi there! > > > > > > > Hal wrote: > > > > > > > > I just created a new merge request for the p51d-jsbsim model. This > is > > > > merge > > > > > > > request #66. This merge includes the following changes: > > > Running p51d-jsbsim now gives me no visual model, an empty dialog > popup > > > > I am not seeing this on my system and GIT tells me that my local copy is > in > > sync with what in my clone of fgdata which should now be in sync with > the > > p51d parts of fgdata. I think you are missing a file below there is > more > > info on this. > > > The messages below are related to the visual model. > > > > > Error reading panel: > > > Failed to open file > > > Failed to load model: Failed to load panel > > > Aircraft/p51d/Models/induction-air-hotspots.xml > > > from:Aircraft/p51d/Models/p51d-jw-jsbsim.xml > > > > These messages I am NOT seeing locally. Are you sure you got a good > copy > > of fgdata from GIT? > > > > Aircraft/p51d/Models/induction-air-hotspots.xml is new and goes with the > > ram air and hot air controls. As a test I renamed it and I got no > visual > > models and I also got an "OK" popup. So it looks like you didn't get > this > > file for some reason. > > I took a closer look and it appears that I missed the > Aircraft/p51d/Models/induction-air-hotspots.xml file when I was checking > in my > changes. I have checked this into my fgdata clone and I will be > requesting a > merge into fgdata to get it into place shortly. Not sure how I missed it. > Easy to do. Vivian -- Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] p51d-jsbsim merge request
Hi there! > Hal wrote: > > I just created a new merge request for the p51d-jsbsim model. This is merge > request #66. This merge includes the following changes: Running p51d-jsbsim now gives me no visual model, an empty dialog popup and a lot of errors in the console: Processing command line arguments NoaaMetarRwalWxController::update() received METAR 2010/12/26 15:25 EHEH 261525Z AUTO 21004KT 8000 BR FEW059 OVC078 01/0 0 Q1025 BLU WHT BECMG BLU BECMG 22005KT 8000 BR FEW012 BKN060 Property /engines/engine[0]/mp-inhg is already defined. Property /engines/engine/oil-temperature-degf is already defined. Property /controls/fuel/tank-selector is already defined. Property /controls/engines/engine/throttle is already defined. Property ap/ap_map_hold is already defined. Property ap/throttle-cmd-norm is already defined. FGPropertyManager::GetNode() No node found for ap/map-error In condition: ap/map-error LT 0.0. Unknown property ap/map-error referenced. Creating property. Check usage. Failed to tie property ap/throttle-cmd-out to object methods Failed to tie property ap/cooling-cmd-out to object methods Property propulsion/tank/priority is already defined. Property propulsion/tank[1]/priority is already defined. Property propulsion/tank[2]/priority is already defined. Property propulsion/tank[3]/priority is already defined. Property propulsion/tank[4]/priority is already defined. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[8]/count In condition: /ai/submodels/submodel[8]/count == 1. Unknown property /ai/submodels/submodel[8]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[9]/count In condition: /ai/submodels/submodel[9]/count == 1. Unknown property /ai/submodels/submodel[9]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[10]/count In condition: /ai/submodels/submodel[10]/count == 1. Unknown property /ai/submodels/submodel[10]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[11]/count In condition: /ai/submodels/submodel[11]/count == 1. Unknown property /ai/submodels/submodel[11]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[12]/count In condition: /ai/submodels/submodel[12]/count == 1. Unknown property /ai/submodels/submodel[12]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[13]/count In condition: /ai/submodels/submodel[13]/count == 1. Unknown property /ai/submodels/submodel[13]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[14]/count In condition: /ai/submodels/submodel[14]/count == 1. Unknown property /ai/submodels/submodel[14]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[15]/count In condition: /ai/submodels/submodel[15]/count == 1. Unknown property /ai/submodels/submodel[15]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[16]/count In condition: /ai/submodels/submodel[16]/count == 1. Unknown property /ai/submodels/submodel[16]/count referenced. Creating property. Check usage. FGPropertyManager::GetNode() No node found for /ai/submodels/submodel[17]/count In condition: /ai/submodels/submodel[17]/count == 1. Unknown property /ai/submodels/submodel[17]/count referenced. Creating property. Check usage. Failed to tie property fcs/sine-wave-generator to object methods Property /ai/submodels/submodel[1]/count is already defined. Property /ai/submodels/submodel[8]/count is already defined. Property /ai/submodels/submodel[9]/count is already defined. Property /ai/submodels/submodel[10]/count is already defined. Property /ai/submodels/submodel[11]/count is already defined. Property /ai/submodels/submodel[12]/count is already defined. Property /ai/submodels/submodel[13]/count is already defined. Property /ai/submodels/submodel[14]/count is already defined. Property /ai/submodels/submodel[15]/count is already defined. Property /ai/submodels/submodel[16]/count is already defined. Property /ai/submodels/submodel[17]/count is already defined. Property /controls/gear/brake-left is already defined. Property /controls/gear/brake-right is already defined. Property /controls/gear/brake-parking is already defined. Failed to tie property fcs/elevator-control to object methods Error reading panel: Failed to open file Failed to load model: Failed to load panel Aircraft/p51d/Models/induction-air-hotspots.xml from:Aircraft/p5
Re: [Flightgear-devel] p51d-jsbsim merge request
Hal wrote > I just created a new merge request for the p51d-jsbsim model. This is > merge > request #66. This merge includes the following changes: > > Add the following to the cockpit: > Manual bomb salvo controls > SCR-522C radio control unit > AN/APS-13 control unit and bell unit > None new placards > Emergency canopy release lever > Canopy crank > Ammeter on main electrical control panel > Cockpit wall frames > Ram air and hot air controls > Gun circuit protector cover > Fixed *.ac files to make material settings consistent. > Cleaned up fuel tank selector to reduce number of vertexes/surfaces. > Added detailed texture to rudder pedals. > Redid left cockpit console to reduce vertexes and to clean up the shape. > Fixed numerous lighting animation issues. > Added integration for new JSBSim cooling hooks. Includes automated coolant > temperature control and animated cooling doors. > Hal > Done. Looks nice. Apart from the really ugly pilot :-). Vivian -- Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] p51d-jsbsim merge request.
"Hal V. Engel" wrote: > It would be really nice to get a similar pano of a D/K cockpit since that > would be very helpful getting the cockpit modeled. This is the only one I'm aware of, Martin. -- Unix _IS_ user friendly - it's just selective about who its friends are ! -- -- Increase Visibility of Your 3D Game App & Earn a Chance To Win $500! Tap into the largest installed PC base & get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] p51d-jsbsim merge request.
"Hal V. Engel" wrote: > There is tons of stuff that remains to be done still. For example the > cockpit [...] While you're at it if you didn't know before, you might be intersted in this one (beware, huge dowbload, don't klick if you don't need it ): http://www.stclairphoto-imaging.com/360/P51-Mustang/P51_swf.html Cheers, Martin. -- Unix _IS_ user friendly - it's just selective about who its friends are ! -- -- Increase Visibility of Your 3D Game App & Earn a Chance To Win $500! Tap into the largest installed PC base & get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] p51d-jsbsim merge request.
On Sunday 28 November 2010 21:02:48 Jon S. Berndt wrote: > > There is tons of stuff that remains to be done still. > > You sound like me: always seeing what is yet left to be done. From my point > of view, your work on this model is at the top of the charts. > > > There are also things that I have not attempted to implement yet > > because they > > are not supported by JSBSim. The most significant of these for this > > model is > > support for liquid cooled piston engines. The doors on the dog house > > for > > engine and oil cooling control exist and have animation hooks but there > > is > > currently no way to setup the cooling system since the JSBSIm piston > > engine > > model assumes air cooling and almost none of the cooling related stuff > > is > > exposed in the property tree. Even if all of these were exposed I am > > not sure > > if it would be possible to fake the behavior of a liquid cooled engine. > > Remember that we have implemented pre and post functions in engine > modeling. That is, any arbitrary function can be defined and set to execute > either before or after the main engine model code. That won't help if the > appropriate properties are not exposed, though, of course. Do you have a > list of which properties you still need from the engine model? > > Jon I've been sitting on my cooling patch for a long, long time. Maybe its time to share! :) I added two properties: {number} {number} The cooling-factor is exposed as the property propulsion/engine/cooling-factor so it may be adjusted during the run to simulate cowl flaps opening and closing or ... Its default value is 0.514, a number that was hard-coded before. This number scales the apparent airflow in the engine so increasing it results in more cooling, decreasing it results in less cooling. Not exactly liquid cooling, but it is a flexible control. Cylinder-head-mass is per cylinder and defaults to 2kg. This number comes from the old hard-coded default of 8 divided by the 4 cylinders the original model represented. Increasing the value increases the time it takes the engine to "heat up." So we can use this value to adjust how long we can run at maximum power before the engine starts to overheat. Overheating doesn't do anything by default, but cylinder head temperature is also now available as propulsion/engine/cht-degF so you could play with bsfc or volumetric efficiency as the engine heats up. Thanks, Ron diff --git a/src/models/propulsion/FGPiston.h b/src/models/propulsion/FGPiston.h index 13072af..f7ee05b 100644 --- a/src/models/propulsion/FGPiston.h +++ b/src/models/propulsion/FGPiston.h @@ -71,6 +71,7 @@ CLASS DOCUMENTATION {number} {number} {number} + {number} {number} {number} {number} @@ -101,6 +102,7 @@ CLASS DOCUMENTATION {number} {number} {number} + {number} @endcode @@ -160,8 +162,7 @@ CLASS DOCUMENTATION config file (and is above RATEDBOOST1), then the throttle position is interpreted as: -- 0 to 0.95 : idle manifold pressure to rated boost (where attainable) -- 0.96, 0.97, 0.98 : rated boost (where attainable). +- 0 to 0.98 : idle manifold pressure to rated boost (where attainable) - 0.99, 1.0 : takeoff boost (where attainable). A typical takeoff boost for an earlyish Merlin was about 12psi, compared @@ -200,21 +201,21 @@ public: std::string GetEngineValues(const std::string& delimiter); void Calculate(void); - double GetPowerAvailable(void) {return PowerAvailable;} + double GetPowerAvailable(void) const {return PowerAvailable;} double CalcFuelNeed(void); void ResetToIC(void); void SetMagnetos(int magnetos) {Magnetos = magnetos;} - double GetEGT(void) { return EGT_degC; } - int GetMagnetos(void) {return Magnetos;} + double GetEGT(void) const { return EGT_degC; } + int GetMagnetos(void) const {return Magnetos;} - double getExhaustGasTemp_degF(void) {return KelvinToFahrenheit(ExhaustGasTemp_degK);} + double getExhaustGasTemp_degF(void) const {return KelvinToFahrenheit(ExhaustGasTemp_degK);} double getManifoldPressure_inHg(void) const {return ManifoldPressure_inHg;} - double getCylinderHeadTemp_degF(void) {return KelvinToFahrenheit(CylinderHeadTemp_degK);} + double getCylinderHeadTemp_degF(void) const {return KelvinToFahrenheit(CylinderHeadTemp_degK);} double getOilPressure_psi(void) const {return OilPressure_psi;} - double getOilTemp_degF (void) {return KelvinToFahrenheit(OilTemp_degK);} - double getRPM(void) {return RPM;} + double getOilTemp_degF (void) const {return KelvinToFahrenheit(OilTemp_degK);} + double getRPM(void) const {return RPM;} protected: @@ -275,6 +276,7 @@ private: double Bore; // inches double Stroke; // inches double Cylinders;// number + double CylinderHeadMass; // kilograms double CompressionRatio; // number double Z_airbox;
Re: [Flightgear-devel] p51d-jsbsim merge request.
> There is tons of stuff that remains to be done still. You sound like me: always seeing what is yet left to be done. From my point of view, your work on this model is at the top of the charts. > There are also things that I have not attempted to implement yet > because they > are not supported by JSBSim. The most significant of these for this > model is > support for liquid cooled piston engines. The doors on the dog house > for > engine and oil cooling control exist and have animation hooks but there > is > currently no way to setup the cooling system since the JSBSIm piston > engine > model assumes air cooling and almost none of the cooling related stuff > is > exposed in the property tree. Even if all of these were exposed I am > not sure > if it would be possible to fake the behavior of a liquid cooled engine. Remember that we have implemented pre and post functions in engine modeling. That is, any arbitrary function can be defined and set to execute either before or after the main engine model code. That won't help if the appropriate properties are not exposed, though, of course. Do you have a list of which properties you still need from the engine model? Jon -- Increase Visibility of Your 3D Game App & Earn a Chance To Win $500! Tap into the largest installed PC base & get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel
Re: [Flightgear-devel] p51d-jsbsim merge request.
-Original Message- > From: Hal V. Engel [mailto:hven...@gmail.com] > I just created a merge request to move updates to the JSBSim p51d into > fgdata. Changes include: > > ... > > Hal Would love to see a video of a flight showing these updated features. I think it would be a really nice showcase for what FlightGear can do. JB -- Increase Visibility of Your 3D Game App & Earn a Chance To Win $500! Tap into the largest installed PC base & get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel