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

FlyPT 6DOF/Stewart/Hexapod Interface for linear and rotating actuators

Discussion in 'FlyPt Mover' started by pmvcda, Jan 2, 2019.

  1. smitty

    smitty Active Member

    Joined:
    Aug 24, 2021
    Messages:
    135
    Balance:
    841Coins
    Ratings:
    +183 / 2 / -0
    My Motion Simulator:
    6DOF
    In profiles i have downloaded traction loss is just a cubic function on yaw rotation speed. Between the green lines nothing happens, but once you go past it, the rig will yaw and it will feel like traction loss. If your car is able to make very tight turns you might hit the limit.
    You can widen the area by changing the cubic parameter (green) , make it move more (orange) and how fast (blue)

    upload_2023-10-20_8-21-23.png
    EMALP(EMALP(LOGISTIC(CUBIC3(VALUE;0.00005);15;2);50);50)

    Attached Files:

    • Informative Informative x 2
  2. SprungNickel

    SprungNickel New Member

    Joined:
    May 2, 2024
    Messages:
    3
    Balance:
    33Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    6DOF
    long shot question from lurker, first time poster. I have the opportunity to try a 6DOF Stewart platform linear actuator 1610 ballscrew 300mm travel that is running FlyPT with an ACC profile.
    I'd like to bring my PC and controls, to hook up to the rig. I'd install FlyPT on my PC. hook up Thanos AMC etc... in order to try MSFS 2020. I have all that setup on my PC, VR etc...
    How far away from making this work am I? Is there a profile that can be shared as a baseline for this config in the community?
  3. smitty

    smitty Active Member

    Joined:
    Aug 24, 2021
    Messages:
    135
    Balance:
    841Coins
    Ratings:
    +183 / 2 / -0
    My Motion Simulator:
    6DOF
    Not far.. open up my attached msfs profile and then import the rig from ACC profile. delete my rig entry and then just go thru the poses and outputs to make sure they use the new rig. you can get it all working in the 3d viewer and when it's behaving properly, go plug into the 6dof

    Attached Files:

    • Useful Useful x 2
  4. SprungNickel

    SprungNickel New Member

    Joined:
    May 2, 2024
    Messages:
    3
    Balance:
    33Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    6DOF
    Thank you Smitty. I like your Vids by the way.
    • Like Like x 1
  5. SprungNickel

    SprungNickel New Member

    Joined:
    May 2, 2024
    Messages:
    3
    Balance:
    33Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    6DOF
    Got it to work.... I started building my frame and ordered my actuators. picking out a AASD controller. M4S or Thanos. Seems M4S has edge with 32bit processor and higher resolution control of the actuators.
  6. MaxPower

    MaxPower New Member

    Joined:
    May 20, 2024
    Messages:
    16
    Balance:
    91Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    6DOF
    I was looking at the horizontal double circular hexapod setup, and not sure in what situation this setup would be chosen. Are there any photos of real-world setups like this?
  7. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,158
    Location:
    Portugal
    Balance:
    15,264Coins
    Ratings:
    +2,531 / 17 / -0
    My Motion Simulator:
    6DOF
    Double


    Simple




    In a double you can cross arms giving you more range


    Edit: saw a real double rotary, but can't find the video right now

    2nd edit: Take a look at this paper: https://www.researchgate.net/profil...A-new-rotary-hexapod-for-micropositioning.pdf
    [​IMG]
    Last edited: Jun 27, 2024
  8. Pierre Lalancette

    Pierre Lalancette Sir Lalancelot Gold Contributor

    Joined:
    Dec 11, 2016
    Messages:
    958
    Occupation:
    Tech Artist
    Location:
    Quebec, Canada
    Balance:
    7,773Coins
    Ratings:
    +895 / 6 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, 6DOF
    I love that system. It's so ingenious.
  9. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    216
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,439Coins
    Ratings:
    +88 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I'm planning to build a 6DOF (upgrading from my DIY 2DOF running on FlyPT) so I'm playing with FlyPT and figuring out dimensions and geometry. And I'm stuck on a basic stage of defining ranges. I entered all dimensions and the geometry looks right. Then I moved the individual Pose sliders and entered the ranges just before "out of range" light red. I entered them in Pose ranges and in Rig Pose limits. So now the individual motion ranges work fine in the visualizer. But when I max out two sliders at once, it goes to red again. I understand why that is, but I though it was supposed to crop the motion based on the ranges, instead of going out of range? How do I set it up so it can use most available ranges and not just minimize everything to the max possible at the most extreme setting. It's not realistic to hit extreme settings often, and I'd rather crop the motion when one of the actuators hits the limit but let other work, i.e. when I only roll I want the full extent of the roll to work, but when I pitch and roll, crop it to something manageable. Is it possible or am I not getting how it works?

    This is Max roll - range is set at 11 degrees not to overextend - it goes red if it's higher:
    upload_2024-9-10_20-14-56.png

    When I add Pitch - it goes out of range. "Stay on last possible pose" doesn't help.
    upload_2024-9-10_20-15-40.png
    To add to the confusion, the tips for "pose limits" and "drive pose" seem to be reversed, or the Drive pose tip doesn't make sense at all. I'm completely confused because they don't make sense to me now, and I can find no documentation about this part:
    upload_2024-9-10_20-20-20.png
    Last edited: Sep 11, 2024
  10. smitty

    smitty Active Member

    Joined:
    Aug 24, 2021
    Messages:
    135
    Balance:
    841Coins
    Ratings:
    +183 / 2 / -0
    My Motion Simulator:
    6DOF
    such is the way of 6d0f kinematics! you can move the full possible heave, and do the full possible roll, but not both. Imagine drawing a rectangle in a circle. it can be tall, but has to be skinny. Or wide, but not so tall. Or just square. Those represent possible translate:rotate ratios. so you will have to limit them, or wash out translations quickly, so that you are near center where you can get the most movement
    • Agree Agree x 1
  11. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    216
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,439Coins
    Ratings:
    +88 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I understand that, but what I mean is, let's say I have almost full roll and no pitch - I want all the pitch to be available, until some range is needed for added pitch. But it looks like I have to hard-limit everything, which leaves almost no motion, especially with heave.
    In your example, it seems logical to allow for the most efficient rectangle within the circle, based on current inputs.
    Otherwise, with this geometry I don't seem to have motion left, and that shouldn't be the case... any tips?
  12. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,158
    Location:
    Portugal
    Balance:
    15,264Coins
    Ratings:
    +2,531 / 17 / -0
    My Motion Simulator:
    6DOF
    Like @smitty said, that's the behaviour of the Stewart platform:

    upload_2024-9-11_1-53-47.png

    The image shows the working volume of this type of rig, like an umbrella.
  13. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,158
    Location:
    Portugal
    Balance:
    15,264Coins
    Ratings:
    +2,531 / 17 / -0
    My Motion Simulator:
    6DOF
    In the new Mover there's a new motion alghorithm implemented that scales down motion to fit the limits. Never goes out of limits, but keeps some motion.

    In current one you can check the stay on last possible pose to keep the rig there without moving (motion compensation still works for VR) or allow movement on the actuators that still have range, but introducing false cues and loosing VR compensation
    • Winner Winner x 2
    • Informative Informative x 1
  14. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    216
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,439Coins
    Ratings:
    +88 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Thanks, but what should I set it up for? If I actually limit it so no singularity can occur with any extreme setting, it leaves literally a couple of degrees and a few centimeters of movement at any time and direction. Obviously that shouldn't be like that? We want to use the entire "umbrella", right? Instead I'd be using only a tiny part in the center. Or something is deeply wrong with my settings or geometry - and I better get it right before I attempt to build it :)
    Here's my test file.

    Attached Files:

  15. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    216
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,439Coins
    Ratings:
    +88 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I see. But it doesn't show that it stays, just the singularity error with actuators keep moving, stretching the rods?

    It's not very clear which checkbox it is, but I tried both. Second one seems more probable. Anyway, the 3D Viewer still keeps moving...
    upload_2024-9-10_21-7-9.png
  16. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    216
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,439Coins
    Ratings:
    +88 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I think I understand what's going on... It's not entirely clear from the 3D viewer, because it keeps moving after the "last possible pose" is reached, but if I look at the "bit output" it does stop and doesn't move actuators forward, while the 3D viewer still shows them moving. So I assume what happens is what I actually want - it moves to the extent of the available range in the current combination of DOF and stops there.

    I guess the strategy should then be like this: limit some excess DOF ranges just to exclude the extremely unrealistic crops but leave the rest to the "last possible pose" with "out of range" still happening in the extreme combinations that are not very likely to happen in game. On those occasions, there will be some false motion cues in one or more DOF but I think it would be reasonable and rare. For example, when in a hard roll and a strong heave motion is happening (i.e. hard landing), the heave will be limited and cut short, but when the roll decreases the heave will advance further. It would be better if the new motion takes precedence over the old one, so in this example, if the roll would decrease if the new heave motion happens when in a roll. But I'll take what I can get :)

    I wonder if I can leave it to SMC3 to limit individual arms. But I'm afraid they will be fighting each other as they all should stay in the same plane I think, and they would want to move out of since. So I guess I must either use "last possible pose" or hard-limit so no "out of range" can ever happen or the rig will tear itself apart! This was not an issue with 2DOF of course, where any combination of motor positions is viable, as long as the arm angle is not exceeded - and it won't be as it's cropped by SMC3. But with 6DOF I think it won't stay in the same plane if I leave it to SMC3 to crop... Hmm...
    Last edited: Sep 11, 2024
  17. smitty

    smitty Active Member

    Joined:
    Aug 24, 2021
    Messages:
    135
    Balance:
    841Coins
    Ratings:
    +183 / 2 / -0
    My Motion Simulator:
    6DOF
    that's it exactly; the 6dof have to move together as a unit. if it were possible to have the L2 dimension zero, then a tiny bit more motion could be realized, but the system as a whole needs to be solvable. 60mm stroke is pretty small, and even with my 200mm crank arms i still get overlimit freezes. You could lower your singularity protection, 10deg is quite generous and safe, to 5 deg or less. itll get you that last bit of capability but these sort of mechanisms need to be designed to have much more motion in each axis individually to be able to use just half of it in real applications
  18. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    216
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,439Coins
    Ratings:
    +88 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I'm planning to use Yasu wheelchair motors (250W, 75RPM,36Nm, 24V). Those are borderline for 6DOF I think but there was a successful project so I hope it's doable. It would be great if longer arms would work, like 80mm but I'm not sure if they will on those motors. I'm not even sure if it's a good idea at all, but other motors put me out of budget...
  19. smitty

    smitty Active Member

    Joined:
    Aug 24, 2021
    Messages:
    135
    Balance:
    841Coins
    Ratings:
    +183 / 2 / -0
    My Motion Simulator:
    6DOF
    I took a look at your mover file, its good that the base is wider than the upper section, that will get the most out of the short arms. But you can limit sway surge and heave to 40, or even 30mm (honestly i barely feel 100mm translations in VR) and then pitch and roll set to maybe 6-8 max and yaw ~5 deg. it will feel good that way and still remain in limits.

    EDIT.. never mind about base being "larger"... its best geometrically to have the base about the same size as the upper. otherwise there is wasted motion, because the pushrod will be at an angle to the crank arm. try to keep the pushrod perpendicular to the motor axis on heave. (it looks like your design does this fairly ok)
    • Informative Informative x 1
    Last edited: Sep 11, 2024
  20. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    216
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,439Coins
    Ratings:
    +88 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Jazzy wheelchair motors
    Thank you very much for the advice! I will plan along those lines... I have no idea what would feel good on a 6DOF in VR, so personal experience is important. DOF Reality H6 only says "17 degrees" of motion, without specifying any DOF ranges. So it's hard to get an idea what to aim for...