1. Do not share user accounts! Any account that is shared by another person will be blocked and closed. This means: we will close not only the account that is shared, but also the main account of the user who uses another person's account. We have the ability to detect account sharing, so please do not try to cheat the system. This action will take place on 04/18/2023. Read all forum rules.
    Dismiss Notice
  2. For downloading SimTools plugins you need a Download Package. Get it with virtual coins that you receive for forum activity or Buy Download Package - We have a zero Spam tolerance so read our forum rules first.

    Buy Now a Download Plan!
  3. Do not try to cheat our system and do not post an unnecessary amount of useless posts only to earn credits here. We have a zero spam tolerance policy and this will cause a ban of your user account. Otherwise we wish you a pleasant stay here! Read the forum rules
  4. We have a few rules which you need to read and accept before posting anything here! Following these rules will keep the forum clean and your stay pleasant. Do not follow these rules can lead to permanent exclusion from this website: Read the forum rules.
    Are you a company? Read our company rules

Writing a motion cueing software from scratch.

Discussion in 'DIY Motion Simulator Projects' started by Dirty, Feb 28, 2019.

  1. Dirty

    Dirty Well-Known Member Gold Contributor

    Joined:
    Oct 15, 2017
    Messages:
    736
    Occupation:
    All the way up front.
    Location:
    Germany
    Balance:
    7,825Coins
    Ratings:
    +859 / 2 / -0
    Oh, that's interesting! I have never thought about stability criteria in the PID loop. But you're right, it would only distort the value of a DOF, but the PID hardware controling the actual movement wouldn't even know about how its position target came to be.


    WOW!!!! Great point! I mean it's not great being told "You might run into problems" but it sure the hell beats actually running into problems :grin That completely disappeared from my radar!

    May I generalise that question into "Are there even any forbidden states?" It is the question I brought up in @My.stAr 's thread "Basics of 6DOF platform". I am almost sure, that for an ideal Stewart platform I can always change one actuator in lenght and still keep a valid position. But I wouldn't know if that is still the case for an actual platform where the connect points of the actuators are not in the same place....

    I wanted to try this out with @pmvcda 's Sketchup model, but apparently it runs only in Sketchup Pro and not in Sketchup Free. Or am I missing something? If I understood correctly this model is driven by forward kinematics.
  2. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Now, a little idea about profiling.
    I would need a real cessna/airliner pilot experience.

    Actually while the aircraft is banking lets say 30 deg. normally, if the turn is coordinated, (ball in the center or yaw damping on) the pilot body and his passengers does not feel the tilt effect. Am I right?

    So actually for flight simulations, the roll angular position may not be used in opposition to pitch position.

    Feel free to develop the idea if you think it worth it.
  3. Tim McGuire

    Tim McGuire "Forever a work in progress"

    Joined:
    Jul 26, 2015
    Messages:
    261
    Occupation:
    Electrical/Electronics Engineer
    Location:
    Canada
    Balance:
    2,158Coins
    Ratings:
    +313 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor
    That is actually a very good question. I can't seem to find an easy answer online, but I'll dig a bit. For some reason I remembered reading somewhere that it was possible, but I'm thinking I might have been mistaken on that front.
  4. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    It is true to a certain degree.
    Moving only one actuator can sometimes lead into huge mechanical contraints and stress.

  5. chauffeur

    chauffeur New Member

    Joined:
    Feb 23, 2019
    Messages:
    11
    Balance:
    67Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    6DOF
    To answer your question, during coordinated turns, the pilot does not feel the tilt, but he does feel the turn. In other words, during a coordinated turn (ball centered), he does get pushed into the seat (perpendicular to the seat), but he does not feel any forces pushing him to either side of the seat. The moment he feels the onset of a tilt (being pushed to either side of the seat), his instincts gained from hundreds of hours of training/practice kick in. Instinctively, he then uses the rudder to get the ball back to the center again.

    All of these forces can be felt easily. In fact most experienced pilots react to whatever forces they are feeling at the moment, and correct/compensate for them appropriately, without even having to look at the turn coordinator (or other instruments).

    Hope this helps.
  6. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Thank you!

    If I follow you correctly, in coordinated turn, our roll should be 0, once the aircraft is tilted, when will you feel lateral forces (gravity) more - while skidding or while slipping?

    ski.JPG

    It could be possible to simulate skidding and slipping so actually, instead of positions one should map the coordinator ball datarefs on the roll axis.

    slip.JPG

    @value1 what's the procedure to output this through the plugin?
    Could you please build a custom version for testing purposes?
    Last edited: Mar 15, 2019
  7. chauffeur

    chauffeur New Member

    Joined:
    Feb 23, 2019
    Messages:
    11
    Balance:
    67Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    6DOF
    You will feel lateral forces during both slips and skids. Note that slips and skids are two faces of the same coin. In other words, they are the same thing, only their directions are different. During an uncoordinated turn, we call it a “slip” when the ball deflects in the direction of the low wing (“slipping down the wing” is how I remember it), and when the ball deflects in the direction of the high wing, we call it a “skid” (“skidding up the wing”).

    In a coordinated turn, roll need not be zero. For instance, a pilot might roll 30 degrees and start the turn. Half way into the turn, he might roll another 15 degrees and all along keep the ball perfectly centered. He would do this by compensating for the extra forces (both horizontal and vertical forces - please refer to the pictures you've pasted above) generated while rolling the additional 15 degrees by applying more “back pressure” (pulling on the yoke).

    Assuming coordinated flight, when rolling the initial 30 degrees, you will feel yourself being pushed into the seat (perpendicular to the seat). During the additional 15 degrees of roll, you will feel even more of a push into the seat (once again, perpendicular to the seat). Of course all along, working the rudder would be very important as well, but given the scope of your question, to keep things simple, let me skip that portion.

    Please let me know if you have any other questions.
  8. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    I mean a state of coordinated flight without any changes. You said the pilot doesn’t feel the tilt so our platform needs to be 0.

    You said that the pilot feels when the flight in not coordinated even without seeing the ball.

    For our roll dof, the “tilt feel” component could be mixed with angular acceleration.

    For the moment we are mixing angular acceleration with angular position

    You follow me?
  9. value1

    value1 Nerd SimAxe Beta Tester SimTools Developer Gold Contributor

    Joined:
    Jan 9, 2011
    Messages:
    2,184
    Location:
    Zug, Switzerland
    Balance:
    14,461Coins
    Ratings:
    +3,318 / 11 / -1
    My Motion Simulator:
    2DOF, DC motor, JRK, Joyrider
    Let me take you to into outer space to clarify what one is able to sense and how this is represented. Gravity in outer space is almost 0.
    You will not be able to "feel" the angles (pitch, roll, yaw) out there. What you will feel is a change of the angles = rotation, ("pitch/sec").
    You will not be able to "sense" speed (nor position). What you will feel is a change of speed = acceleration ("surge, sway, heave").
    With the rotation vector and the acceleration vector you describe in full the movement of the vehicle/body.

    Whatever the cause of the movement (slip, skid, bump, braking, etc.) is completely irrelevant.
    In theory there is no need for additional output (not even a separate traction loss is needed for a functional 6-DOF). Maybe it can be handy to have it available separately for a less-than-6-DOF platform or to exaggerate the effect.
    • Like Like x 1
    • Winner Winner x 1
  10. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Let us please develop a bit on this topic.

    I can not fully agree. between theory and practice there is some subtilities which could be taken in consideration

    First question:

    What is "relevant" for you as standard 6dof telemetry and its eventual different variants?

    Some are claiming one need only 3 angular positions and 3 translational acceleration.

    1.)
    Is for you the approach of mixing angular positions with angular accelerations a part of standard ?
    2.)
    Is the approach of mapping surge on pitch and sway on roll (classical washout) also irrelevant?

    With my experience until now I can get best results in x-plane using the following method:

    Dof ROLL - roll acceleration - sway acceleration
    Dof PITCH - pitch position - pitch acceleration - surge acceleration
    Dof HEAVE - vertical accel
    Dof YAW - angular accel around vertical axis
    Dof SWAY - lateral accel
    Dof SURGE - longitudinal accel

    The quality of realism depends of proportion of mixing.

    However this approach is working very well I am searching for improuvent to make it even better.
    Last edited: Mar 15, 2019
  11. chauffeur

    chauffeur New Member

    Joined:
    Feb 23, 2019
    Messages:
    11
    Balance:
    67Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    6DOF
    On the topic of the pilot not feeling the tilt, let me explain with an overly simplistic example:

    Sitting in my office (that is, when on the stable rigid ground), if you strap me to a regular office/wooden chair and turn the chair 45 degrees, I will feel a substantial force trying to topple me over (the straps would stop me from falling/toppling over). In other words, I am able to feel "tilt" when on the ground. When in the pilot's seat during flight, at 45 degrees of bank, those forces that were trying to topple me over on earth are absent. In other words, when piloting my plane, I cannot feel "tilt."

    I agree with value1's response above. A pilot is able to feel change or rate of change. That's all that matters, and it makes life easier if the intent is to program something. Trying to program each "type" of movement/maneuver (such as slip, skid, etc.), would just be overwhelming, probably impractical, unnecessary and possibly impossible.
  12. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Again slowly...

    For the roll change of rate we output the variable “angular velocity”
    For the roll position we output the variable “angular position” based on aircraft bank angle.

    Velocity returns to 0 and the position holds the aircraft bank angle

    Are you agree that platform being roll tilted in coordinated turn is something highly unrealistic?
    Last edited: Mar 15, 2019
  13. chauffeur

    chauffeur New Member

    Joined:
    Feb 23, 2019
    Messages:
    11
    Balance:
    67Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    6DOF
    I am unable to fully understand the last line in your post (my apologies for that). Having said that, I do agree generally with what you've stated. Again, my points till now can be summarized in two bullets:
    1. Pilots don't feel tilt, but they feel the turn.
    2. My guess is simulating specific situations such as skip, skid, etc. in a realistic manner might be very difficult, if not impossible, given the confines and constraints that a simulator needs to operate within.

    If you could please expand/explain the last line of your post, I might be able to let you know my thoughts from a pilots standpoint.
  14. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    It’s easy!

    if you platform is tilted trough the variable “angular position, your vestibular system feels the tilt although in reality the pilot does not feel it.

    You are right, it’s nearly impossible to simulate some of sustained accelerations like those you are talking about.

    If I understand well, the pilot feels the turn through the force which push him into the back of his chair. Did I got you correctly?

    If that’s the case we can maybe cheat a bit and use a bit of PITCH like we do already for longitudinal accelerations
    Last edited: Mar 15, 2019
  15. chauffeur

    chauffeur New Member

    Joined:
    Feb 23, 2019
    Messages:
    11
    Balance:
    67Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    6DOF
    I see what you were trying to say. Yes, totally agree with everything you've stated in your post. Your understanding and restatement of what a pilot feels while in flight is correct.

    Thanks.
  16. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Thank you for your understanding.

    I am talking abouti it in this thread because it is something one can consider before you hard-code a certain cueing algorithm which can turn out in a “false good idea”
  17. value1

    value1 Nerd SimAxe Beta Tester SimTools Developer Gold Contributor

    Joined:
    Jan 9, 2011
    Messages:
    2,184
    Location:
    Zug, Switzerland
    Balance:
    14,461Coins
    Ratings:
    +3,318 / 11 / -1
    My Motion Simulator:
    2DOF, DC motor, JRK, Joyrider
    Not owning a 6DOF platform I probably should keep my mouth shut…
    However with the three rotations and the accelerations you have a complete set of variables to simulate any movement with a 6DOF.
    But maybe with the practical limitations of a 6DOF (e.g. upload_2019-3-15_18-37-18.png , limited rotation, limited acceleration, etc.) a balanced compromise is the best one can achieve.
    • Agree Agree x 1
    • Friendly Friendly x 1
  18. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    One say “The better is the enemy of the good”

    I agree, most of the time it’s better to keep it simple.

    Motion platform stats from Laminar Research does not output the angular positions. Maybe it’s intentional maybe not.

    Anyway it is scratching me a bit to try the relevance of the “slip indicator” in practice

    Cheers
  19. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,093
    Location:
    berlin
    Balance:
    7,091Coins
    Ratings:
    +336 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Let’s unify out terminology to avoid misunderstandings.

    When you write “rotations” you mean “rotational positions” in opposite to “rotational accelerations” or (angular velocity) right?

    We can agree on another terms for it, I don’t care how you call it, I am only trying to reach a better communication
  20. SeatTime

    SeatTime Well-Known Member

    Joined:
    Dec 27, 2013
    Messages:
    2,574
    Occupation:
    Retired
    Location:
    Brisbane Australia
    Balance:
    28,370Coins
    Ratings:
    +2,844 / 38 / -0
    My Motion Simulator:
    AC motor, Motion platform
    Yep, impossible to get all the forces even close to right with just a 6DOF, which is why I moved into attaching 'Gravity' systems (Servo controlled harnesses/vests/helmets etc) quite some time ago. Will watch this thread with interest.
    • Agree Agree x 1