Board index FlightGear Development Aircraft

JSBSim Piper J-3 Cub  Topic is solved

Questions and discussion about creating aircraft. Flight dynamics, 3d models, cockpits, systems, animation, textures.

Re: JSBSim Piper J-3 Cub

Postby wlbragg » Tue Jun 02, 2020 5:30 pm

Is it worth it just for animation in brief and unstable situations?

That thought crossed my mind. If it was as simple as exposing the rotation angle in the FDM (same as the z-index is exposed in the tree), then sure, why not. It is a big part of the beginning of flight. I always lean toward realism and details.
Kansas and Ohio/Midwest scenery development.
KEQA, 3AU, KRCP Airport Layout
Intel i7/GeForce RTX 2070/Max-Q
User avatar
wlbragg
 
Posts: 7609
Joined: Sun Aug 26, 2012 12:31 am
Location: Kansas (Tornado Alley), USA
Callsign: WC2020
Version: next
OS: Win10/Linux/RTX 2070

Re: JSBSim Piper J-3 Cub

Postby D-ECHO » Tue Jun 02, 2020 5:33 pm

FCS/steering-cmd-norm or so; when limit is not 360 (=castering)
D-ECHO
 
Posts: 2462
Joined: Sat May 09, 2015 1:31 pm
Pronouns: Bea (she/her)
Version: next

Re: JSBSim Piper J-3 Cub

Postby dany93 » Tue Jun 02, 2020 6:03 pm

In the P51D, they made a combination of:
- steerable mode, where the tail wheel is only very slightly steerable. This is the "normal" mode,
- castor wheel mode, that you get by pushing the stick full.

The wheel rotation is animated.

Properties to watch:
/gear/gear[2] steering-norm
/fdm/jsbsim/gear/unit[2] steering-angle_deg.
in both modes (steered and castor)

To switch from "steered" to "castor", maybe the /fdm/jsbsim/gear/unit[2] slip-angle-deg can be the criteria.
Last edited by dany93 on Tue Jun 02, 2020 6:17 pm, edited 1 time in total.
dany93
 
Posts: 861
Joined: Mon Sep 07, 2009 4:43 pm
Location: France (Paris region)
Version: 2020.4.0
OS: Linux Mint 20.3

Re: JSBSim Piper J-3 Cub

Postby Ysop » Tue Jun 02, 2020 7:08 pm

As it is a good principle to have things fixed (or moving in a controllable way), the loose springs look like sloppy maintenance.

compare https://www.supercub.org/forum/showthread.php?20934-Tail-wheel-spring-tension-and-Leveling-punch-mark

Need to make a sketch to be clear about angles and forces. Sideforce is easiest. Difference between rudder angle and tailwheel is important, as sideforce should be about linear to this.
User avatar
Ysop
 
Posts: 1350
Joined: Thu Oct 25, 2018 10:06 pm
Version: 2020.3.18
OS: ubuntu 22.04

Re: JSBSim Piper J-3 Cub

Postby wlbragg » Tue Jun 02, 2020 7:59 pm

Thanks everyone, I'll check these resources and see what I can come up with, unless someone beats me to it.
Kansas and Ohio/Midwest scenery development.
KEQA, 3AU, KRCP Airport Layout
Intel i7/GeForce RTX 2070/Max-Q
User avatar
wlbragg
 
Posts: 7609
Joined: Sun Aug 26, 2012 12:31 am
Location: Kansas (Tornado Alley), USA
Callsign: WC2020
Version: next
OS: Win10/Linux/RTX 2070

Re: JSBSim Piper J-3 Cub

Postby Alant » Tue Jun 02, 2020 10:03 pm

If JSBSim rotation is set to 360deg, you should get castoring and hence no side force.
There is nothing to prevent a limit being applied to the animation, and this would have no effect of the forces calculated in JSBSim.
Alan
Alant
 
Posts: 1223
Joined: Wed Jun 23, 2010 6:58 am
Location: Portugal
Callsign: Tarnish99
Version: latest Git
OS: Windows 10/11

Re: JSBSim Piper J-3 Cub

Postby dany93 » Wed Jun 03, 2020 10:03 am

Alant wrote in Tue Jun 02, 2020 10:03 pm:If JSBSim rotation is set to 360deg, you should get castoring and hence no side force.

Good reminder.

The /fdm/jsbsim/gear/unit : steering-angle-deg can be calculated by:
- in castor mode,
/gear/gear : steering-norm * 360
and (please fix me if I'm wrong)
- in steerable mode,
/gear/gear : steering-norm * max-steer

See also
/fdm/jsbsim/fcs/steer-cmd-norm
/fdm/jsbsim/fcs/steer-pos-deg

JSBSim Reference Manual v1.0 (2011), p.40 (PDF 51/158) Ground reactions (search word: "Castered", "steering").

The steering-angle-deg works well for animation of the rotation angle for the tail wheel.
In particular, also well for animation in castor mode (360).

However, the castor mode is wrong from the FDM and mechanical point of view because in real life the springs exert a return (or restoring?) moment on the rotating wheel (moment and force on the aircraft) if the wheel angle is greater than the rudder angle (+/- 30 deg max IRL, actual rudder angle depends on the control).
IRL, with this aircraft, there is no "free" castor mode.
[EDIT]
Unless it would be declutchable :!: (unlockable). Just found This video 1:45.
[/EDIT]

Suggestion: (to be considered critically, please)

- In the FDM, set steering mode, max_steer angle +/- 30 deg (it cannot be steered farther than rudder amplitude)
steering-angle-deg = /gear/gear : steering-norm * 30. (to be calculated and added in the Property tree)
In FG, using differential braking and / or rudder propwash, the tail wheel will laterally slip on the ground thanks to the moderate dynamic friction (that's cheating, I admit, but that's mechanically acceptable for approximation of the behavior).

- For animation of the rotation angle, use:
(/fdm/jsbsim/gear/unit ) steering-angle-deg + slip-angle-deg,

If it is declutchable, a true castor wheel when beyond +/- 30° rotation is the better way. But quite difficult IMO. Worst, switching should be based on lateral force exerted on the tail wheel, even if the rudder and wheel rotation are at zero.
Even if it is declutchable, a low friction can approximate. Although the dynamic friction should if possible be lower when beyond +/- 30° rotation.
Last edited by dany93 on Thu Jun 04, 2020 4:32 pm, edited 3 times in total.
dany93
 
Posts: 861
Joined: Mon Sep 07, 2009 4:43 pm
Location: France (Paris region)
Version: 2020.4.0
OS: Linux Mint 20.3

Re: JSBSim Piper J-3 Cub

Postby Ysop » Wed Jun 03, 2020 9:52 pm

Excellent research and summary!

And thanks to wlbragg for the update, so our taildragger friends have a controllable version.

A low friction would have the benefit, that it would not only "cheat" for the larger angles, but also would limit the steering efficiency at smaller angles.

Is there a property showing sideforce on position of the tailwheel as a ground reaction?

Assuming castoring exists:
It might be necessary to define a property "tailwheel_angle"
If tailwheel_angle>45° and sideforce > limit1 then max_steer unit=360.
Should be reset after tailwheel angle returns to something between -45° and 45°.

The 45° is a guess. Limit 1 could be set to 4lbs, so it can be easily done by hand, which seems to the case. Actual values debatable after the concept is correct.

The tailwheel angle can be determined by sideforce, rudder angle and the geometry/spring constants.
Theoretically. So there should be a solution of the case aircraft is standing on the ground, tailwheel_angle not zero and after throttling up the tail moves sideways first (some kind of lag??? Or a friction installed, meaning tailwheel_angle remains constant unless sideforce is below certain value (simplification!))

Sorry, that this not yet a complete solution. Maybe playing around with frictions is the easier way.

edit: tailwheel_angle already mentioned by dany93 as steering-angle-deg. Plusminus 30° to represent rudder deflection is a good approach.
User avatar
Ysop
 
Posts: 1350
Joined: Thu Oct 25, 2018 10:06 pm
Version: 2020.3.18
OS: ubuntu 22.04

Re: JSBSim Piper J-3 Cub

Postby Alant » Wed Jun 03, 2020 10:23 pm

Last year I was looking at ground handling of the J3 Cub. Unfortunately I did not complete the work as I had been neglecting my own WIP, on which progress had ground to a halt.
JSBSim does not make everthing available on the property tree, but does have a facility for logging many internal variables, including many which are not exposed as properties.
To do this add code such as this to the JSBSim XML.
Code: Select all
<output name="c:/users/alan/documents/j3cub_datalog.csv" type="CSV" rate="1">
  <!--<property> fcs/fly-by-wire/pitch/q-washout </property>
 <property> velocities/q-aero-deg_sec </property>
 <property> attitude/phi-rad </property>
 <property> position/h-sl-ft </property>-->
 <property> velocities/vc-kts </property>
 <property>aero/alpha-deg</property>
 <property>aero/beta-rad</property>
 <property> fcs/throttle-cmd-norm </property>
 <property> fcs/left-brake-cmd-norm </property>
 <property> fcs/right-brake-cmd-norm </property>
 <property> fcs/elevator-cmd-norm </property>
 <property> fcs/aileron-cmd-norm </property>
 <property> fcs/rudder-cmd-norm </property>
 <!--<property> fcs/pitch-trim-cmd-norm </property>
 <property> propulsion/total-fuel-lbs </property>
 <property> flight-path/gamma-rad </property>
 <property> accelerations/n-pilot-z-norm </property>-->
 <rates> OFF</rates>
 <velocities> ON </velocities>
 <forces> ON </forces>
 <moments> ON </moments>
 <position> OFF </position>
 <fcs> OFF </fcs>
 <propulsion> OFF </propulsion>
 <aerosurfaces> OFF </aerosurfaces>
 <ground_reactions> ON </ground_reactions>
</output>

You will get a .csv file which can be imported into your favourite spreadsheet.

The tailwheel in your link is a modern after market unit. Some folk have a desire to modernise historic vehicles and try to bring them up to modern standards. My other hobby is vintage cars, and the number of original vehicles that have been vandalised in attempts to make them behave more like modern vehicles is very sad. What would you think if the Mona Lisa was restored to make it photo-realistic ?
Alan
Alant
 
Posts: 1223
Joined: Wed Jun 23, 2010 6:58 am
Location: Portugal
Callsign: Tarnish99
Version: latest Git
OS: Windows 10/11

Re: JSBSim Piper J-3 Cub

Postby wlbragg » Thu Jun 04, 2020 12:01 am

The tailwheel in your link is a modern after market unit.

Which one is that?
This one?
Image
Kansas and Ohio/Midwest scenery development.
KEQA, 3AU, KRCP Airport Layout
Intel i7/GeForce RTX 2070/Max-Q
User avatar
wlbragg
 
Posts: 7609
Joined: Sun Aug 26, 2012 12:31 am
Location: Kansas (Tornado Alley), USA
Callsign: WC2020
Version: next
OS: Win10/Linux/RTX 2070

Re: JSBSim Piper J-3 Cub

Postby Alant » Thu Jun 04, 2020 12:19 am

I was referring to this link https://www.youtube.com/watch?v=QtokU8mIDQk
A problem with simulating the Cub is that there are so many later modifications. Should we try to simulate the original, or should we simulate an aircraft whose owner/s has/have bought every add-on that has come to the market?
Alan
Alant
 
Posts: 1223
Joined: Wed Jun 23, 2010 6:58 am
Location: Portugal
Callsign: Tarnish99
Version: latest Git
OS: Windows 10/11

Re: JSBSim Piper J-3 Cub

Postby wlbragg » Thu Jun 04, 2020 1:17 am

Should we try to simulate the original, or should we simulate an aircraft whose owner/s has/have bought every add-on that has come to the market?

First the original, then if still motivated, maybe the after market stuff.
Kansas and Ohio/Midwest scenery development.
KEQA, 3AU, KRCP Airport Layout
Intel i7/GeForce RTX 2070/Max-Q
User avatar
wlbragg
 
Posts: 7609
Joined: Sun Aug 26, 2012 12:31 am
Location: Kansas (Tornado Alley), USA
Callsign: WC2020
Version: next
OS: Win10/Linux/RTX 2070

Re: JSBSim Piper J-3 Cub

Postby wlbragg » Thu Jun 04, 2020 9:12 pm

Here's what I have so far. The wheel and ski animation wont turn when WOW and < .5 mph. Still need to add rotation to spring and chains to keep them aligned when turning. Also still need to implement FDM dynamics of the turn. Right now it is simply set to -30 deg.

Thanks helijah, I borrowed the spring off your new Draco tailgear. I'm far to lazy to start from scratch when I don't have to. If you need some chain for any of your aircraft, I'll reciprocate. :)

Image

Image
Kansas and Ohio/Midwest scenery development.
KEQA, 3AU, KRCP Airport Layout
Intel i7/GeForce RTX 2070/Max-Q
User avatar
wlbragg
 
Posts: 7609
Joined: Sun Aug 26, 2012 12:31 am
Location: Kansas (Tornado Alley), USA
Callsign: WC2020
Version: next
OS: Win10/Linux/RTX 2070

Re: JSBSim Piper J-3 Cub

Postby Ysop » Thu Jun 04, 2020 9:40 pm

Looks nice!

Thanks for the info, Alan! I'll try it out. Will also be beneficial for my main project (C550).

Little time at the moment, but on the weekend some testing with the friction idea and further refining the more technical approach.
User avatar
Ysop
 
Posts: 1350
Joined: Thu Oct 25, 2018 10:06 pm
Version: 2020.3.18
OS: ubuntu 22.04

Re: JSBSim Piper J-3 Cub

Postby dany93 » Thu Jun 04, 2020 10:17 pm

Hi wlbragg,

The rotation axis of the rudder (which pulls on the springs) is close vertical. For this reason and to have a correct wheel-rotation on the (horizontal) ground surface,the rotation axis of the tail wheel must be vertical too. Which does not seem to be the case when observing your current configuration
Like the picture in your message.
Or in this video.
dany93
 
Posts: 861
Joined: Mon Sep 07, 2009 4:43 pm
Location: France (Paris region)
Version: 2020.4.0
OS: Linux Mint 20.3

PreviousNext

Return to Aircraft

Who is online

Users browsing this forum: No registered users and 4 guests