Something like this is right along the lines of what I had hoped the JSBSim FCS components would be used for. I'll be anxious to try it out.
Also, this is where a good GUI editor would come in handy. At the least, I have thought about writing a program that would parse the FCS file and write out a flight control block diagram. Someday ... Jon > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Behalf Of Hof Markus > Sent: Monday, January 12, 2004 7:57 AM > To: FlightGear developers discussions > Subject: Re: [Flightgear-devel] Autocoordination : Derivatives in FCS > > > Now I've fixed bank hold mode. here are some parts you want me to post. I > made some test and error in Rollrate should be less than 0.5� > Bank hold mode holds bank at error 0.02� > As soon as I have fixed up pitch mode, you'll get the hole A/C for test > flight. > > markus > > <COMPONENT NAME="FCPC bank hold" TYPE="SWITCH"> > <TEST LOGIC="DEFAULT" VALUE="0"> > </TEST> > <TEST LOGIC="AND" VALUE="1"> > fcs/aileron-cmd-norm <= 0.02 > fcs/aileron-cmd-norm >= -0.02 > </TEST> > </COMPONENT> > <COMPONENT NAME="FCPC bank hold to" TYPE="SWITCH"> > <TEST LOGIC="AND" VALUE="attitude/roll-rad"> > fcs/fcpc-bank-hold == 0 > </TEST> > </COMPONENT> > <COMPONENT NAME="FCPC bank error" TYPE="SUMMER"> > INPUT fcs/fcpc-bank-hold-to > INPUT -attitude/roll-rad > </COMPONENT> > <COMPONENT NAME="FCPC bank p" TYPE="PURE_GAIN"> > INPUT fcs/fcpc-bank-error > GAIN 3.0 > </COMPONENT> > <COMPONENT NAME="FCPC bank d" TYPE="LEAD_LAG_FILTER"> > INPUT fcs/fcpc-bank-error > C1 0.05 > C2 0.0 > C3 0.0 > C4 1.0 > </COMPONENT> > <COMPONENT NAME="FCPC bank i" TYPE="INTEGRATOR"> > INPUT fcs/fcpc-bank-error > C1 0.005 > </COMPONENT> > <COMPONENT NAME="FCPC bank total" TYPE="SUMMER"> > INPUT fcs/fcpc-bank-p > INPUT fcs/fcpc-bank-d > INPUT fcs/fcpc-bank-i > </COMPONENT> > <COMPONENT NAME="FCPC rr ss ordered grad" TYPE="PURE_GAIN"> > INPUT fcs/aileron-cmd-norm > GAIN 10.0 > </COMPONENT> > <COMPONENT NAME="FCPC rr ss ordered rad" TYPE="PURE_GAIN"> > INPUT fcs/fcpc-rr-ss-ordered-grad > GAIN 0.01745329 > </COMPONENT> > <COMPONENT NAME="FCPC rr ordered" TYPE="SWITCH"> > <TEST LOGIC="DEFAULT" VALUE="fcs/fcpc-rr-ss-ordered-rad"> > </TEST> > <TEST LOGIC="AND" VALUE="fcs/fcpc-bank-total"> > fcs/fcpc-bank-hold == 1 > </TEST> > </COMPONENT> > <COMPONENT NAME="FCPC rr error" TYPE="SUMMER"> > INPUT fcs/fcpc-rr-ordered > INPUT -velocities/p-rad_sec > </COMPONENT> > <COMPONENT NAME="FCPC rr p" TYPE="PURE_GAIN"> > INPUT fcs/fcpc-rr-error > GAIN 15.0 > </COMPONENT> > <COMPONENT NAME="FCPC rr d" TYPE="LEAD_LAG_FILTER"> > INPUT fcs/fcpc-rr-error > C1 0.25 > C2 0.0 > C3 0.0 > C4 1.0 > </COMPONENT> > <COMPONENT NAME="FCPC rr i" TYPE="INTEGRATOR"> > INPUT fcs/fcpc-rr-error <!-- should be 0 if bank mode --> > C1 0.0005 > </COMPONENT> > <COMPONENT NAME="FCPC rr total" TYPE="SUMMER"> > INPUT fcs/fcpc-rr-p > INPUT fcs/fcpc-rr-d > INPUT fcs/fcpc-rr-i > </COMPONENT> > <COMPONENT NAME="Roll Trim Sum" TYPE="SUMMER"> > INPUT fcs/fcpc-rr-total > INPUT fcs/roll-trim-cmd-norm > CLIPTO -1 1 > </COMPONENT> > > ----- Original Message ----- > From: "Jon S Berndt" <[EMAIL PROTECTED]> > To: "FlightGear developers discussions" <[EMAIL PROTECTED]> > Sent: Thursday, January 08, 2004 10:26 PM > Subject: Re: [Flightgear-devel] Autocoordination : Derivatives in FCS > > > > On Thu, 8 Jan 2004 20:41:00 +0100 > > "Hof Markus" <[EMAIL PROTECTED]> wrote: > > > > >Other topic: Are there any suggestions about how to build a d/d(t) of > > >a property in fdm > > > > > >markus > > > > Markus: > > > > For JSBSim, you can use the flight control components. This is a > > quick reply, so maybe I have not thought this all the way out, yet. > > But, I suspect you can get a derivative control like this: > > > > In LaPlace space, a derivative is simply "s", right (it's been a long > > time since I've worked in LaPlace space - someone correct me if I am > > wrong, please). You can use the Tustin substitution to go from > > LaPlace space to the time domain (z domain), as we do with all the > > JSBSim flight control components (this is typical in industry, too). > > Have you seen the "Automatic Flight in JSBSim" document at the JSBSim > > web site? Go to www.jsbsim.org, select Documentation, then select that > > title. You will see the Lead-Lag and Second order filters described. > > Select the coefficients for these two filters to give you only an "s" > > in the numerator. For the lead-lag filter you would selectC1 = 1, C4 > > = 1, and C2 and C3 would be 0. For the second order filter, C2 and C6 > > would be 1 and C1, C3, C4, and C5 would be 0. Using these filters > > should give you the derivative of the input. Now, I have not used > > these filters for that purpose, yet. Initialization would be very > > important for them to work correctly. I'd have to test them out to see > > if that worked correctly. > > > > Jon > > > > _______________________________________________ > > Flightgear-devel mailing list > > [EMAIL PROTECTED] > > http://mail.flightgear.org/mailman/listinfo/flightgear-devel > > > > > _______________________________________________ > Flightgear-devel mailing list > [EMAIL PROTECTED] > http://mail.flightgear.org/mailman/listinfo/flightgear-devel _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel
