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

Question Angular position or acceleration feedback for Closed-loop control?

Discussion in 'New users start here - FAQ' started by wavesEngine, Feb 1, 2019.

  1. wavesEngine

    wavesEngine New Member

    Joined:
    Nov 19, 2018
    Messages:
    8
    Balance:
    80Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, Arduino
    Hello,

    I have some things I did not understand :

    According to sim-tools manual (FAQ/Which way to set SimTool axis movements):

    Pitch is the tilt of the car forwards or backwards in [°]
    Roll is how much the car is dipped to the left or right in [°]
    Yaw is the heading of the car (north, east, south, west) in [°]

    Surge means the acceleration of the car in longitudinal direction [g]
    Sway means the acceleration of the car in lateral direction [g]
    Heave means the acceleration up and down [g]

    According to your schematics :
    [​IMG]
    So the closed-loop control is base on angle position feedback (in deg). No trouble for Pitch roll and Yall.

    But what about Surge, sway and heave ?
    Set point input must be in G (or % of 9.81 m/s²) because it's a acceleration. no trouble with that, it's logic!

    so in standard closed-loop control we need feedback corresponding of an acceleration, but not a angle position as configured in lot of exemple I can see on arduino program or so one.

    If i don't make mistake - Acceleration could be write like this :
    Acc = G . sin (θ) + K . d²θ/dt²
    According to this formula, acceleration and angular position "θ" are not proportional. so is a bit strange to make closed-loop control on angular position when sim-tools send acceleration set point...

    Does Simtools game-engine make the convertion somewhere ? How does it works ?
    Thank-you in advance for your answer.
  2. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,574Coins
    Ratings:
    +1,831 / 32 / -1
    If a rig has the required range it can simulate degrees exactly but it's imposible to simulate forces exactly without moving thru space so there's no need to try to.
  3. wavesEngine

    wavesEngine New Member

    Joined:
    Nov 19, 2018
    Messages:
    8
    Balance:
    80Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, Arduino
    Thank for your answers.
    OK, so you confirm that Sim-tools need angulare position to works.

    Maybe do you know how the "conversion" between acceleration and angular feedback is made on simtools ? (I have looking for information a lot but did not found).

    I actualy works on system which use static acceleration (cause by sinus of gravité angle) AND dynamique part of acceleration (cause by the variation of mouvement usualy unheeded on usual way of sit mouvement). So every help to understand how Simtools works could be helpfull.
    Last edited: Feb 1, 2019
  4. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,574Coins
    Ratings:
    +1,831 / 32 / -1
    Sure it's simple really. Forces increase and decrease and feedback increases and decreases. So simtools simply scales one to the other based on your preference. Profiles can be made for different vehicles so you can adjust for differences between driving a mini and F1 for example so each can use the full range of your actuators if desired.
    • Informative Informative x 1
  5. wavesEngine

    wavesEngine New Member

    Joined:
    Nov 19, 2018
    Messages:
    8
    Balance:
    80Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, Arduino
    Sorry, but you did not answer to the main question :
    Feedback.png

    Which "conversion" are made between acceleration and angular feedback on simtools? Does it made something like Acceleration feedback =angulare position ?
  6. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,574Coins
    Ratings:
    +1,831 / 32 / -1
    Simtools scaling the target to work with your setup is the conversion. Angular or linear is dependant on if you're tilting to simulate the forces or moving a linear table around. In any case it's imposible to simulate heave forces by tilting (an angle). And I did answer your question, you convert to your preference (what feels correct to you).
    • Informative Informative x 1
  7. wavesEngine

    wavesEngine New Member

    Joined:
    Nov 19, 2018
    Messages:
    8
    Balance:
    80Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, Arduino
    BlazinH, thank you to continue to speak with me ! :)
    ok, I agree. I considéring angular movement with uge travel. In "axis assignments" you can choose which of set points use and choose a sort of proportional scaling as shaw here for exemple, as you describe, ok! :

    Exemple.png

    I totaly agree with that! I speak only on Surge and Sway acceleration. :thumbs

    That why I will take an usual exemple for one axis configuration :
    :

    Exemple2.png
    Some simulator with arduino work like that. Replace 100% with what is convegnient value for you, doesn't matter...
    I understand we want to moove our seat when car change longitudinal angle (pitch as exemple) AND when we "push" brake or accelerator pedal. Ok, by this way, seat will "moove" in good direction but not with correct amplitude in function of acceleration!
    Take an exemple : a car accelerate with constant acceleration of 0.5g during 2 second. In fact, 0.5g corresponding of sin(30°) of the seat.
    in same case but for 0.125g (corresponding of 0.5g/4) must corresponding of sin(7.18°) and not 7.5° (30°/4)...
    so angle and acceleration is not lineare case for big angle : first trouble in statique!
    In addition seat did not go from 0° to 30° immediately, it will take some decysecond to rich the point, for surge deceleration during violente and continued braking for exemple some latency could appeare in dynamic!

    To sum up, by this way, it did be faithful with real felling we will had if we was in car. In industrial system with closed-loop control to avoid this type of trooble, we usualy associate set point and feedback with same unit... that why I am a bit confuse with ° and g ... in same closed-loop control...
    I understand it could approximately work but not with good dynamique fidelity?

    That why I try another way of moving seat, which allow user to be moved with more accuracy and more fidelity. Correct me If I had made mistake. ;)
  8. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,574Coins
    Ratings:
    +1,831 / 32 / -1
    Since you can't accurately simulate forces without moving thru space you are instead creating cues for them. You learn to accept these cues as substitutes for the real thing with experience. So your only "mistake" as I see it is in attempting to apply mathematics to something that is subjective.
    • Agree Agree x 1
    Last edited: Feb 2, 2019
  9. Erik Middeldorp

    Erik Middeldorp Member

    Joined:
    Sep 15, 2018
    Messages:
    50
    Occupation:
    sheet metal worker
    Location:
    Auckland, New Zealand
    Balance:
    609Coins
    Ratings:
    +45 / 0 / -0
    Have you thought about a motion rig with the pivot point at the top? With a high pivot at or above head height everything below the pivot will experience acceleration in the correct direction as soon as the rig starts rotating rather than in the opposite direction until the rig gets to the necessary angle. I haven't tried a motion sim yet but I intend to build one with a high pivot. Here's some related threads that explain it better:
    https://www.xsimulator.net/community/threads/my-2dof-diy-sim.3646/
    https://www.xsimulator.net/communit...tor-with-the-universal-joint-at-the-top.7156/
    https://www.xsimulator.net/community/threads/2-dof-sim-v3-plus-wmr-vr-headset.13012/
  10. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,574Coins
    Ratings:
    +1,831 / 32 / -1
    It may produce good motion when simulating upper wing aircraft but thats about it imo.
    • Agree Agree x 1