Motion Platform Links

Vehicles and Stuff

 

Component Info

Electric Motors

Speed Controllers

Batteries

Adhesives

Ball & Sockets Joints

Bearings

Gears

Chains & Sprockets

Shaft Collars

Shaft Steel

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Component Search

Component Information

Plans Order

Power Calculator

Contact

Conditions

DIY Control Loading (Force Feedback)

Click the image to see a more recent force feedback flight yoke project.

DIY Force Feeback Output Trace

 Force effect traces from the beta Control Loading Software - see page 3

UPDATE July '10 - The flight control loading software developed for the project is now available for free.

 

This section describes some experimental work I did on a DIY force feedback system with some tests on a modified joystick. Since then I have done more work on a force feedback flight yoke - so click on the image right to see this more recent project.....

 

Introduction

Different System Approaches

Attempt 1

Attempt 2

Attempt 3

Software

Test Rig

Effects and Impressions So Far

Way Forward

 

Introduction

 

I've seen posts on various flight sim forums that force feedback joysticks don't seem to work out all that well for the more serious simmer. I've never actually tried one so can't comment on how good they are. At the same time however I've also had mentioned to me how interesting it would be if there was an effective, low-cost control loading system - they do seem to have an important role to play in many commercial training simulators.

 

Well - always up for a challenge!

 

Approaches

 

To be honest I'm not absolutely sure how gaming style force feedback joysticks work - well the principal is simple enough,  force effects sent out from the game to the joystick which are turned into variable drive torques from electric motors attached to the joystick motion axes. I've seen these drives described as "servos" but Roland van Roy's DIY modifications to an existing joystick suggest that for some there is no position feedback involved and a variable voltage demand on the motors is used to generate what are effectively varying stall torques. These torques are transferred to the joystick and have to be resisted by the user and produce the force feedback effect.

 

 

The source of the force feedback signals is pretty much hidden in the game coding, but the range of effects usually includes various speed dependent effects, rumbles & clunks of sorts etc etc.

 

In commercial control loading systems the approach appears to be to model the control surfaces and transmission elements dynamically as a mass/spring/damper type system. The equation of motion of this modelled system includes all the input force effects (including the pilot's forces acting on the control yoke/stick and the aerodynamic forces on the control surfaces) and is solved numerically in real time to yield yoke acceleration, velocity and then position. This calculated position response is used to drive the yoke motion which is actually controlled by the drive motors rather than the pilot - although it feels to the pilot as if he/she's doing the driving. The approach reminds me a bit of power steering systems in which it's not the vehicle driver's forces that turn the steering wheel but the underlying hydraulic/electrical drive system. By fine tuning the parameters of the equation of motion the response of the modelled system can be engineered to match that of the real aircraft and so make the controls feel the same as the real ones.

 

I thought this sounded the better approach and started out with a view to replicate it......hmmm!

 

Attempt 1

 

Well, this first attempt came to grief fairly quickly, foundering on the rock of load sensing! For the approach to work it is necessary to measure accurately the forces applied to the yoke by the pilot and to do this some sort of load sensing is required. It is possible to buy accurate load sensors, but they cost a fortune and in any case they need to be cleanly engineered into the control mechanisms to make sure they are measuring exactly what you want them to measure. The cheapest options I could find were Tekscan FlexiForce® sensors and Peratech QTC Pills, but to cut the story short couldn't see how to get either to work sufficiently accurately at a reasonable cost and with a manageable level of engineering effort. So....

 

Attempt 2

 

I think it is possible to retain the majority of the elements of the commercial control loading approach but to avoid the need for real-time load sensing. This involves some manipulation of the system mathematical model and the way it is solved but effectively involves monitoring the control yoke position and using its difference from the calculated position of the modelled system mass together with an assumed mechanism stiffness to determine what force must be being applied by the pilot. To test this I wrote a small software application which reads the data from the flight sim and does the control loading sums. And to generate the feedback forces I set up a simple test servo drive to my basic joystick using high torque RC type servos. The software and mechanical / electrical systems are described on page 3.

 

 

This approach seemed to work - after a fashion. The joystick movements generate displacements in the modelled system mass which can then be turned into servo movements to generate the matching joystick forces. The system behaviour can be altered by altering the mass, stiffness, damping etc parameters in the model however it was whilst attempting to "tune" this to get believable control forces that the main problem with the approach emerged. In short I could solve the equation of motion without unstable oscillations emerging so long as the system was "soft" and had a low natural frequency. The trouble is I think the real aircraft control system mechanics are quite stiff and have a fairly high natural frequency and to numerically solve such a stiff system in real time needs a very fast calculation loop time. My current software loops at about 25 cycles per second - I think an order of magnitude faster might really be needed. Without dedicating a separate PC to the task and somehow also managing the slower input of data from the flight sim I can't really solve this with a low cost DIY system! So.......

 

Attempt 3

 

You need to move on to page 2 to read about this one.....

 

 

 

© This site is copyrighted, If you'd like more information or have any comments please contact me at

 

Copyright © 2006-2009 BFF Design Ltd All Rights Reserved.