Gyroscope

Really surprised about the Bullet Physics engine that it simulates torques and precession so well.
Saw this amazing demonstration (min 22):

And it works in Blender. Keys A and D only rotate the red part:

For the fun of it there is a gyroscope to play with.
MouseButton: spin.
Mouse: change xy-orientation

Gyro.blend (994.9 KB)

(UPBGE 0.3)

MrDbgit did some nice gyroscope simulations in Blender:

6 Likes

Turn into UFO when in Air :slight_smile:

Gyro1.blend (1.0 MB)

3 Likes

Space bar: Spin
Left MouseButton: attach rope
Right MouseButton: detach rope

Rope modified from this:Swing and grab with (light) rope (UPBGE 0.3) - #19 by musikai
Gyro2.blend (1.2 MB)

2 Likes

Wind direction is z-axis of wind object.

Gyro can sail. (wind force acts on gyro orientation)
(edit: instead of my ugly hack in version3 to compensate the loose hinge now this makes spring constraints stiffer:

bge.constraints.setNumTimeSubSteps(5)

Lot to learn from here:

Gyro4.blend (1.3 MB)

2 Likes

Mousewheel to zoom
Can you transport the “Precession machine”?

Gyro5.blend (1.3 MB)

Gyro with Rotor Blades and helicopter Physics.
Fascinated by the sheer amount of finesse in helicopter controls and that the rotor blades are not so fixed as you would think.

The cyclic control of a helicopter is 90degree from its wanted direction and people argue if this is because of gyroscopic precession or of a phase delay of the rotor blades effect.

In this file I tried it with Gyro. All forces (apart from the spin) come from the blades. The direction rotation of the Gyro is achieved by applying forces on each blade in the right moment. Which is 90degree from the wanted direction because of the gyroscopic precession. (This was also the case in all previous versions but there a torque was applied directly on the Gyro)
The blades are mounted only by a hinge.
Gyro6.blend (1.4 MB)

Now applied forces can be shown:

Ah, yes there is also a Bell helicopter to play with now. Be very subtle with your controls!!!
I’m glad I never bought and crashed an RC-Heli :slight_smile:

Gyro7.blend (1.9 MB)

View:
    Key 1: Focus on Gyro
    Key 2: Focus on Helicopter (automatically starts Engine)
    Mouse Wheel: Zoom
    
Controls:       
    Precession machine:
        A/D:  rotate red part

    Gyro:
        Space key: Spin and apply lift
        Mouse: rotate direction
        
    Helicopter:
        W/S: main Rotor Collective pitch 
        A/D: tail rotor left/right
        Mouse: main Rotor cyclic control          
        Space key: restart scene
        
    Gyro and Helicopter:
        Left Mouse Button: attach rope
        Right Mouse Button: detach rope

    
Visualization of Forces:
    set the properties of object 'ZSE'
        show_gyro_force
        show_heli_force
    to True or False
    
    
Credits:
Helicopter model by SHINN THANT
https://blendswap.com/blend/15976

I really enjoy exploring physics with Blender’s physics Engine!

When the helicopter moves through the air then the airstream of course has effects on the Rotor.
Now by simulating this airstream the helicopter stabilizes itself in air when moving.
It gets much more controllable.
Gyro8.blend (1.9 MB)

Blender’s Bullet is pretty amazing of course.

Sounds for gyroscope and helicopter.
Rope length can be changed with mousewheel.
Ground Camera (Tower) and helicopter cockpit Camera for the fun of it.
(the alpha blended wind objects are FPS killers, sorry for that)

Gyro9.blend (2.3 MB)

View:
    Key 1: Focus on Gyro
    Key 2: Focus on Helicopter (automatically starts Engine)
    Mouse Wheel + CTRL: Zoom  (when in Fly-by Camera mode)
    
    Key F: Fly-by Camera
    Key G: Ground Camera (Tower)
    Key H: Helicopter Cockpit Camera (also starts Engine)
    
    ENTER key: restart scene
    
Controls:       
    Precession machine:
        A/D:  rotate red part

    Gyro:
        Space key: Spin and apply lift
        Mouse: rotate direction
        
    Helicopter:
        W/S: main Rotor Collective pitch 
        A/D: tail rotor left/right
        Mouse: main Rotor cyclic control          
        
        
    Gyro and Helicopter:
        Left Mouse Button: attach rope
        Right Mouse Button: detach rope
        Mouse Wheel: change rope length
        
  
Visualization of Forces:
    set the properties of object 'ZSE'
        show_gyro_force
        show_heli_force
    to True or False
    
    
Credits:
Helicopter model by SHINN THANT
https://blendswap.com/blend/15976

Nice one, Man!

It’s amazing! I love how you simulated the helicopter’s rotor whirl sound.

1 Like

Yes, I’m very surprised how well this quite simple pitch shifting technique works out. Just took the static audio file from the mentioned blendswap file with the helicopter and correlated its pitch with the rotor spin.
Perhaps because all is driven by forces this sounds so lively.
My roommate always asks for sounds and yeah, this is soooo half the game!

Version9 above is updated. A tiny change with huge effect. The up/down wind forces are now taken directly from the blades instead of the body. No more micro bouncing of the helicopter and much more stable to control.
There are so many small parameter to tweak, and still so much more possible.

Sure, I tested it and realise the experience.

But could you reduce sensitivity of rotation? It’s difficult to stabilise and know the precise direction to rotate as well as increase pitch at the same time to move forward correctly. Or make it in such a way that the cyclic control returns to normal immediately when there’s no input controlling rotation.

That shall pretty much make perfect simulation of gyroscope (which always tends to return to normal with north facing upward).

I guess you might picture what I mean.

Thanks for your input! I had to think about some of the mentioned topics.

The helicopter now has 3 game properties for easier adjusting the sensibility of the controls.

Yes, it’s a helicopter :slight_smile:

When the helicopter gets faster then there will automatically come this effect. But I understand what you mean. You want the heicopter to return to its normal orientation.
In version 10 there is now an “Auto_Stabilizer”-property that is turned on by default and can be disabled.

This is the part that made me think a lot of time. Because a gyroscope doesn’t do this! But it looks like a spinning top on the table does this at first sight. It appears that some tops seem to stand up on their own. How comes that?
It’s not the gyroscopic effect (which acts against any attempt to change the orientation).
If the contact point with the table is only a point the axis will remain the same but only start to rotate slightly around the contact point.(gyroscopic precession):

For a top to stand up by itself the contact point is not a point but a round surface with friction and this lets the contact point wander exactly in opposite direction of the precession.
Here I had to exaggerate this contact point quite much to create a stand-up-top:

Now there is also some nice tops called tinne-top or flipping top that end up spinning upside-down. This is also because of the friction on the table of the special form and center of mass (took me ages to create one):

For the helicopter I also started to try an auto-hover (Space-bar on off) but it’s not good enough I think.
Of course it would be possible to make an arcade/game version of the controls and autopilot but I like to get it simulated with forces.
(Also added ground effect.)
Gyro10.blend (2.9 MB)

View:
    Key 1: Focus on Gyro
    Key 2: Focus on Gyro2
    Key 3: Focus on Helicopter (automatically starts Engine)
    Mouse Wheel + CTRL: Zoom  (when in Fly-by Camera mode)
    
    Key F: Fly-by Camera
    Key G: Ground Camera (Tower)
    Key H: Helicopter Cockpit Camera (also starts Engine)
    
    ENTER key: restart scene
    
Controls:       
    Precession machine:
        A/D:  rotate red part

    Gyro:
        Space key: Spin and apply lift
        Mouse: rotate direction
        
    Helicopter:
        W/S: main Rotor Collective pitch 
        A/D: tail rotor left/right
        Mouse: main Rotor cyclic control   
        Space key: Auto-Hover On/Off  (use only at very low speed!)     
        
        
    Gyro and Helicopter:
        Left Mouse Button: attach rope
        Right Mouse Button: detach rope
        Mouse Wheel: change rope length
        
  
Visualization of Forces:
    set the properties of object 'ZSE'
        show_gyro_force
        show_heli_force
    to True or False
    
    
Credits:
Helicopter model by SHINN THANT
https://blendswap.com/blend/15976
1 Like

You made huge progress.

I tested it. It’s quite more interesting. Looking more realistic.

But are you gonna make a flight simulator? It seems it shall present realistic real-time
helicopter experience.

Anyway, just kinda having the thoughts.

Ground effect was added to version 10.

I loved Flight Simulators and played all from Flight Unlimited, X-Plane, FSX, Aeroflight etc.
And always loved to fly helicopters (in X-Plane). As very young kid I dreamt to buy and build an RC-helicopter but it was too expensive (and too difficult also I think)

Now it was not my goal to create a Flight Simulator but as you see it went this route by testing Blenders Torque Physics.
But what I really like is the rope. This is something that I remember I always wished they would add to X-Plane at the time.

Yeah! That was thoughtful.

I could make assets and levels (or even open world) if you are interested in making one.