1. 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 Download Package Now!
  2. 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
  3. 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 here. Do not following these rules will lead to permanent exclusion from this website: Read the forum rules.

Writing a motion cueing software from scratch.

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

  1. apointner

    apointner Siddhartha

    Joined:
    Aug 16, 2014
    Messages:
    80
    Location:
    N 48° 9'0.88" E 12° 5'45.84"
    Balance:
    452Coins
    Ratings:
    +23 / 3 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, Motion platform
    I will never understand how something like this works, without ripping everything apart! :D
    • Funny Funny x 1
  2. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    674
    Location:
    berlin
    Balance:
    4,434Coins
    Ratings:
    +194 / 2 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Maybe you just allow 3 shorter legs and the kinematic should follow.

    I was considering this design back than but I am afraid the collision possibility due to hight of the gearboxes and shorter legs could gives you a pretty poor performance.
    • Informative Informative x 1
  3. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    674
    Location:
    berlin
    Balance:
    4,434Coins
    Ratings:
    +194 / 2 / -0
    My Motion Simulator:
    DC motor, 6DOF
    I would disagree.

    My experience shows me that what gives you a good performance is the ratio base / upper platform and the length of the leg.

    This „two stage“ System can’t perform well IMHO

    Also I would not put the cranked systems as less performing in general. Quiet the opposite.

    Do the test @Dirty with a base diameter of 120cm upper platform of 100cm and levers of 35cm (yes 35 yes it’s possible with AC servos from Teknic)

    You could reach almost 1 Meter heave with such cracked geometry. Imagine the size of the room you would need if you would get such performance with linear stuff.

    Best
  4. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    674
    Location:
    berlin
    Balance:
    4,434Coins
    Ratings:
    +194 / 2 / -0
    My Motion Simulator:
    DC motor, 6DOF
    I agree this sin cosine in cranked math is quite fascinating. Almost hypnotizing as a camp fire. :)
    • Agree Agree x 1
  5. Zed

    Zed VR Simming w/Vive

    Joined:
    Apr 4, 2017
    Messages:
    757
    Location:
    USA
    Balance:
    4,170Coins
    Ratings:
    +770 / 3 / -0
    My Motion Simulator:
    2DOF, DC motor, JRK
    Thanks, hexpod! Might be the easiest reason yet. I guess nothing is free.

    Cheers!
  6. Dirty

    Dirty Active Member Gold Contributor

    Joined:
    Oct 15, 2017
    Messages:
    310
    Occupation:
    All the way up front.
    Location:
    Germany
    Balance:
    3,365Coins
    Ratings:
    +296 / 1 / -0
    You're right! I Agree with literally everything you said. They both have their strengths and weaknesses. And the range of motion you can achieve with crank arms is certainly impressive. In my post I was focussing on only that one single aspect of crank arm systems: There is an additional joint and that builders should be aware of that.

    I might as well phrase it the other way around: You need good (big) joints to avoid the rig from becoming shaky. Linear actuators can get away with small (cheap) balljoints , cause all forces on the actuator are always "in-line" anyways.

    If I remember correctly, you have these huuuuge 40mm-ish balljoints,.... NICE!!!!! :thumbs
    • Like Like x 1
  7. Dirty

    Dirty Active Member Gold Contributor

    Joined:
    Oct 15, 2017
    Messages:
    310
    Occupation:
    All the way up front.
    Location:
    Germany
    Balance:
    3,365Coins
    Ratings:
    +296 / 1 / -0
    He there, :)

    made a little progress and put some new features in the software:
    - Softstart/stop with "cosine" crossfade
    - Crash detection and recovery working flawless (that was tricky!)
    - Rig configurations can be saved/loaded
    - Crank arm systems implemented (albeit no output to controller yet)
    - Plenty of optimisation done. That was urgently necessary.
    - View panning possible

    The crash detection and recovery was a feature that surprised me, because it was very easy to do badly, but really difficult to do good.

    Outputting the commands for crank arm systems is still on my list, but thus far what kept me from making progress is the fact that I still have absolutely no Idea what in that context a "full stroke" even is!?!
    I think I am nearing a point where the software can actually be used:thumbs My first actuator will be ready for testing late this month, I guess. The other 5 may follow early 2020 and then it's rig building time. :grin

    Cheers... :)
    • Like Like x 1
  8. Dirty

    Dirty Active Member Gold Contributor

    Joined:
    Oct 15, 2017
    Messages:
    310
    Occupation:
    All the way up front.
    Location:
    Germany
    Balance:
    3,365Coins
    Ratings:
    +296 / 1 / -0
    Ups,... forgot to link the video :blush

    • Like Like x 1
  9. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    835
    Location:
    Portugal
    Balance:
    6,412Coins
    Ratings:
    +888 / 12 / -0
    My Motion Simulator:
    6DOF
    Hi,

    That crash detection is interesting. I'm trying to filter the spikes on crashes, I would like people to feel them, but limit the impact.

    So my idea is to remove sudden changes in values, or a low pass filter.
    So I made what I call:

    LDYNLP a linear dynamic low pass filter and a EDYNLP an exponential dynamic low pass filter.
    The logic here is to adapt the number of samples used in the low pass, to the variation of the value.
    So if we get a crash with a high value variation, the values are filtered with an higher intensity low pass filter, keeping lower variations original.
    We can define a multiplier for the number of samples. While in the linear it's just the difference between last filtered value and the new value, in the exponential that difference is ^2.
    I need to make more tests, but it seems to work good. So we can crash and we are not killed by the rig, and we can keep using it without restarting it.

    Curious to see the final rig! Those motors are powerful and fast!
    • Like Like x 1
  10. Trip Rodriguez

    Trip Rodriguez VR Pilot

    Joined:
    May 8, 2016
    Messages:
    510
    Location:
    Lake Ariel, Pennsylvania
    Balance:
    2,751Coins
    Ratings:
    +212 / 3 / -0
    My Motion Simulator:
    6DOF
    Great to see your progress!

    I've been thinking a lot about my rig, and the fact that we still didn't have Huey "on-ground" detection working is really bugging me since that's the main sim I'm building for. =(

    Too many things to do, my head is spinning!