1. Hundreds of coffees, endless nights of debugging and coding, and countless feedback by our beta testers led to this new major release. SimTools 2.4 is probably the version with the most upgrades and improvements in a single release ever. Look at everything Dustin has included:
    SimTools 2.4 all features.
    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 Download Package Now!
  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 here. Do not following these rules will lead to permanent exclusion from this website: Read the forum rules.

FlyPT Mover Interface

Discussion in 'SimTools compatible interfaces' started by pmvcda, May 30, 2019.

  1. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    No, you need to install a new plugin.
    Different and more data in new plugin (12 axis)
    • Like Like x 1
  2. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    504
    Location:
    berlin
    Balance:
    3,537Coins
    Ratings:
    +160 / 2 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Done, connection is working.

    If I understand well, on one degree of freedom, we can map up to 2 effects with separate Mover's filtering.
    One on axs (a) (for ex: main heave) and another through axis (b) ( for ex: rumble effect ect.)

    Is that correct ?

    Actually I would need to map:
    1.) main heave on heave
    2.) extra1 on heave
    3.) extra2 on heave
    4.) extra3 on heave

    And on each of them use a different Mover's filtering.

    Is it possible to do it ?

    Thank you for explaining.
  3. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    504
    Location:
    berlin
    Balance:
    3,537Coins
    Ratings:
    +160 / 2 / -0
    My Motion Simulator:
    DC motor, 6DOF
    .... also what is the purpose to use several SimTools MMF instances?

    Thanks
  4. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    Do you mean
    multiple modules open in FlyPT Mover?
    Well, that's something I want to limit for some modules.
    It's a missing property. But simple to implement.
    While in memory mapped files we can have multiple accesses, that doesn't happen in UDP.
    And if you open two sources for LFS (UDP), only the first one works. This needs to be blocked.
    But it was kept like that, because for example loop sources can be more than one to make certain effects.
    So it was kept like that from the basic idea of modularity.
    I was going to limit it, but then I came with gravity in the sources...
    And I thought, that it could have some interest to mix the same source with and without gravity (maybe useless).
    But in the end, maybe I could put gravity just in the motion cuing... I'm a bit lost for now. Need to think it better.

    or two plugins in SimTools?
    The SimTools plugins for FlyPT Mover and FlyPT Hexapod Interface are completely independent.
    They are diferent, in the amount of data and how info is sent.
    In FlyPT Mover, I send the 12 axis (axis1a to axis6a and axis1b to axis6b) values in double format to the FlyPT Mover.
    In FlyPT Mover I use that data to fill the same name axis and also the sway, surge... like in the FlyPT Hexapod Interface.

    I'm not really understanding what you mean.
    You can mix axis how you want in SimTools.
    And use the 12 to send data how you want.

    For what you mean (I understand), I would put in SimTools something like:
    sway 100% in Axis1a
    surge 100% in Axis2a
    heave 100% in Axis3a
    yaw 100% in Axis4a
    roll 100% in Axis5a
    pitch 100% in Axis6a
    extra1 100% in Axis1b
    extra2 100% in Axis2b
    extra3 100% in Axis3b
    extra1 100% + extra2 100% + extra3 100% + heave 100% in Axis4b

    Now on the pose you select Axis4b for heave:
    Sem nome.jpg

    If you want different filtering in the extras and heave, you can add multiple poses:
    (here I used Axis4b just with the extras)
    Sem nome.jpg
    Don't forget to select both poses in the rig to add them.
  5. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    Thank's I will take a look.
    But I will make it in another thread.
    • Like Like x 1
  6. Tim Palmgren

    Tim Palmgren New Member Gold Contributor

    Joined:
    Feb 9, 2019
    Messages:
    5
    Balance:
    - 6Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF
    Quick question sir, I am about to try to take advantage of your new rig with the 4 linear actuators, but before I pogo my actuators into oblivion (SFX100 build) could you please explain what the 'midpoint' and 'range' settings signify? The rig looks to be at rest, so is the midpoint a measurement of the extended actuator shaft at rest and then the -50 and +50 is total travel either up or down from that point? we have a total of 100MM travel on the actuator so what would be the correct numbers to plug in?
  7. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    504
    Location:
    berlin
    Balance:
    3,537Coins
    Ratings:
    +160 / 2 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Great, Thank you, I will explore this approach.
    Last edited: Jul 1, 2019
  8. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF

    Please be careful. I could not test it. I have not that kind of rig.

    Hope this image is enough:
    path6519-0.png

    Middle is the distance to the floor when actuator is at middle.
    If you don't know it, try to measure distance to floor at maximum and minimum extension.
    Difference/2 is range
    Middle is range+distance to floor at minimum extension
  9. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    @Tim Palmgren,

    What is your hardware?
    What motors/controllers?
    Do you use it already with SimTools? What connection string?
    Sorry, it's just to be safe before using it. We don't want to damage anything.
  10. Thanos

    Thanos Building the Future one AC Servo at a time... or 6

    Joined:
    Jul 6, 2017
    Messages:
    446
    Occupation:
    Electronics Engineer
    Location:
    United States
    Balance:
    3,109Coins
    Ratings:
    +392 / 4 / -0
    My Motion Simulator:
    AC motor, Joyrider, Motion platform, 4DOF, 6DOF
    Hi,
    Tim is using AMC-AASD15A controller (AMC1280UB compatible output string).
    750watt servomotors with four SFX100 (100mm stroke linear actuators, floor mounted (vertical)

    https://www.racedepartment.com/thre...-6axis-servo-motion-controller-thread.168360/


    I'm going to leave here the settings needed for the AMC controllers too:

    The output string to use is:
    <255><255><Axis1a><Axis2a><Axis3a><Axis4a><Axis5a><Axis6a><0><0><0><0><10><13>

    Set serial speed to "250000"
    Set interval to "2"

    In rig: Set bit output to "16"


    And here is quick example of this kind of rig, running simtools:




    Thanks
    Thanos
    • Like Like x 2
    Last edited: Jul 1, 2019
  11. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    Great!
    So there's some hardware protection here.

    Please try. I would love to have some feedback.
    One thing to consider, is that sources come with gravity included, so the rig might instantly go to the limit.

    Remove gravity by unchecking the box on the source you are using.
    Gravity is more suited to air planes or roller coasters where we have inverted positions.
    For cars, this is useless, specially in this kind of rig (small angles).
  12. Tim Palmgren

    Tim Palmgren New Member Gold Contributor

    Joined:
    Feb 9, 2019
    Messages:
    5
    Balance:
    - 6Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF
    Hi there,

    Don't worry I'm seeking advice before I fire it up.
    Currently in use with simtools. Below is the string for it, AMC board AASD15A with the OpenSFX.COM SFX100 actuators. The AMC board has a maximum stroke of 100MM set on the board itself so that is why I am asking also as I think the board itself has safety limits. When the platform raises it should be raising 50mm to hit the midpoint as far as I am aware. That is why I am wondering if the 'middle' is used for figuring out the stroke length to send to the actuator or if it is used to model how the rig moves by adding clearance from the floor to the dimensions. It needs to raise 50mm from rest to get to midpoint then another 50mm more and I expect it would hit the max. From the bottom of the actuator housing to the floor is about 95mm (I have the feet in 'cups' to stop them wandering. Thoughts?

    <255><255><Axis1a><Axis2a><Axis3a><Axis4a><Axis5a><Axis6a><0><0><0><0><10><13>
    Set serial speed to "250000" Set interval to "2" In rig: Set bit output to "16"
  13. Tim Palmgren

    Tim Palmgren New Member Gold Contributor

    Joined:
    Feb 9, 2019
    Messages:
    5
    Balance:
    - 6Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF
    Oops, didn't realise Thanos snuck one in before I refreshed the page and posted lol.
  14. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    @Thanos ,

    Didn't you want to mix high frequency in the actuators?
    Maybe we could try something here.
    I'm thinking of adding a vibe output module where we could convert any signal to audio.
    But if the actuators allow high frequencies...

    @Tim Palmgren ,
    I'm curious with the result.
    The program is calculating the position of the rig with motion cueing or suspension travel.
    Having that position it calculates the distance to the floor for each actuator.

    The way it's done, all actuators should be touching the floor, all the time.
    But nothing is perfect. Would love to know the result.

    I recommend you to setup everything before connecting the rig.
    Make some laps to see if the rig is out of range.

    Change ranges/gains/filters until it fits.
    Maybe use the filters I have in the video.

    When it's in range most of the time, try to connect the rig.

    Actuators above ground should happen only with rig out of range and stay on last possible pose disabled.
    • Like Like x 1
    Last edited: Jul 1, 2019
  15. Thanos

    Thanos Building the Future one AC Servo at a time... or 6

    Joined:
    Jul 6, 2017
    Messages:
    446
    Occupation:
    Electronics Engineer
    Location:
    United States
    Balance:
    3,109Coins
    Ratings:
    +392 / 4 / -0
    My Motion Simulator:
    AC motor, Joyrider, Motion platform, 4DOF, 6DOF
    These servomotor actuators can handle vibe motion information, up to 100hz if you are up to it!!! ;)
  16. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    My loop time is 40 ms in my laptop, running all windows open (3d viewer and info) with RaceRoom.
    Drops to less than 15 ms all hidden, with RaceRoom runing.

    Could be enough already for testing.

    But if (just an idea) we could send the desired frequency/range to the hardware and make it run on hardware, it could be more efficient.
    Kind of a vibe system, but where we send some bit value representing a frequency and range to run in the hardware.
    It would keep that vibration until new command.
    Of course, we also send position.

    Edit:
    I know it should be faster, and it's going to be... I hope
  17. Thanos

    Thanos Building the Future one AC Servo at a time... or 6

    Joined:
    Jul 6, 2017
    Messages:
    446
    Occupation:
    Electronics Engineer
    Location:
    United States
    Balance:
    3,109Coins
    Ratings:
    +392 / 4 / -0
    My Motion Simulator:
    AC motor, Joyrider, Motion platform, 4DOF, 6DOF
    Separate values for vibration it would mean I'd have to do the mixing in hardware that would definitely slow down the response and it would need additional information send that will also need more time to transmit and receive. It wouldn't be able to reach higher frequencies...

    If you can mix the vibrations in the normal motion data it should be sufficient... See this video:


    Thanks
    Thanos
  18. Tim Palmgren

    Tim Palmgren New Member Gold Contributor

    Joined:
    Feb 9, 2019
    Messages:
    5
    Balance:
    - 6Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF
    @pmvcda Ok that makes it a bit clearer. So if I just measure actuator housing to floor at rest, then actuator housing to floor at simtools initialisation (when it goes up halfway) then when it is at maximum travel that should give me the right numbers to plug in?

    So as an example;
    At rest actuator housing to floor = 95mm
    rig initialises, rises 50mm (bottom range) = 145mm
    extends to full extension rises 50mm more = 195mm
    which means midpoint would be 145mm and then the other two would be 50 and 50?

    I have the emergency stop on standby as well lol

    I will follow the procedure you suggest if I have some time tomorrow night to set it all up. I have had an initial look at all the settings and installed the software but will need to dedicate some time to hook it all up. One of the reasons I was intrigued is that you have those suspension types for both acceleration and for position which I would love to experiment with, the other thing is that I would like to have a really shallow heave axis that extracts the 'rumble' or a thin slice of surface detail, and then that is layered on top of the normal heave axis which is more filtered, which would allow you to get really high, unfiltered fidelity of the track surface but it doesnt feel like hitting a kerb in a shopping trolley when you hit a kerb as you can filter the 'normal' heave axis a bit more for the larger suspension movements. The SFX100 software Simfeedback does have the ability you discussed to make the actuators act like transducers so you are actually spot on, it is being used by them currently as optional effects for RPM and suspension rumble.
  19. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    Right.
    I have position, speed and acceleration on suspension, but not all games send that data.
    If you want just some rumble, maybe lower gain (and hides low amplitude) or use an high pass filter.
    Lower the filter until you think it's good. High values let's pass low frequencies, so high movements.
    • Like Like x 1
  20. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    622
    Location:
    Portugal
    Balance:
    4,547Coins
    Ratings:
    +685 / 11 / -0
    My Motion Simulator:
    6DOF
    That's the plugin I made for SimTools.
    In Mover you can add suspension travel/speed/acceleration to the motion. So it's already possible to try.
    • Winner Winner x 2