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. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,159
    Location:
    Portugal
    Balance:
    15,270Coins
    Ratings:
    +2,535 / 17 / -0
    My Motion Simulator:
    6DOF
    You have this:
    Actuators connection order for AMC 6DOF.jpg
    For you rig the string should be: (IF YOU DON'T CHANGE THE CONNECTIONS)

    <255><255><Axis4a><Axis5a><Axis6a><Axis1a><Axis2a><Axis3a><0><0><0><0><10><13>

    I'm getting confused :confused:.... I think it works this way.

    WAIT! If your numbering, is the way they are connected to the AMC, then it should be:

    <255><255><Axis6a><Axis1a><Axis2a><Axis3a><Axis4a><Axis5a><0><0><0><0><10><13>

    :confused::confused::confused::confused::confused:
    Last edited: Feb 8, 2019
  2. Thanos

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

    Joined:
    Jul 6, 2017
    Messages:
    1,358
    Occupation:
    Electronics Engineer
    Location:
    United States
    Balance:
    2,773Coins
    Ratings:
    +1,051 / 9 / -0
    My Motion Simulator:
    AC motor, Motion platform, 4DOF, 6DOF
    I'd advise against changing the standard order that has been used for years now with Ian's Bff 6dof software and Hexpod plugin... it would be impossible to use them if you need later.

    Please use this order here:

    Actuators connection order for AMC 6DOF.jpg
    • Agree Agree x 2
  3. Gabor Pittner

    Gabor Pittner Active Member

    Joined:
    Oct 25, 2018
    Messages:
    195
    Location:
    Szekesfehervar Hungary
    Balance:
    1,337Coins
    Ratings:
    +85 / 0 / -0
    My Motion Simulator:
    6DOF
    My rig is the same like this but front is rear and rear is front. Because I have a pair of actuators in front and the other pairs are rear right and rear left.

    Like Thanos's first rig http://motionsim.blogspot.com/2013/04/some-photos-of-6dof-platform.html?m=1
  4. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,159
    Location:
    Portugal
    Balance:
    15,270Coins
    Ratings:
    +2,535 / 17 / -0
    My Motion Simulator:
    6DOF
    But you can use the same order, you just have different spacing between them and that is setup in the FlyPT Interface when you define the rig
  5. Thanos

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

    Joined:
    Jul 6, 2017
    Messages:
    1,358
    Occupation:
    Electronics Engineer
    Location:
    United States
    Balance:
    2,773Coins
    Ratings:
    +1,051 / 9 / -0
    My Motion Simulator:
    AC motor, Motion platform, 4DOF, 6DOF
    Ok then, then your existing wiring is correct and compatible with the 6dof standard.

    One difference hexpod plugin and Ian's software had, the front and back are opposite, so Ian added direction reversing on his roll pitch and sway surge axis (like mirroring) to accommodate for platforms that needed to have the cockpit lower inside the cockpit thus the legs positioned between the actuators...

    So flypt needs to add this option too...
  6. Gabor Pittner

    Gabor Pittner Active Member

    Joined:
    Oct 25, 2018
    Messages:
    195
    Location:
    Szekesfehervar Hungary
    Balance:
    1,337Coins
    Ratings:
    +85 / 0 / -0
    My Motion Simulator:
    6DOF
    Yes I use hexpod this way as you said, mirroring roll pitch sway surge, and it works. Most of members used this geometry for wormgear motors, except who used linear actuators.
    Last edited: Feb 9, 2019
  7. SeatTime

    SeatTime Well-Known Member

    Joined:
    Dec 27, 2013
    Messages:
    2,573
    Occupation:
    Retired
    Location:
    Brisbane Australia
    Balance:
    28,370Coins
    Ratings:
    +2,844 / 39 / -0
    My Motion Simulator:
    AC motor, Motion platform
    Nice that you asked, obviously times have changed... would not have been allowed to do that back in my day :).
    • Agree Agree x 1
  8. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    1,185
    Location:
    berlin
    Balance:
    7,636Coins
    Ratings:
    +369 / 5 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Because for a beginner the front is usually there where the screens (or the feets) are located, I've seen so many people doing cabling mistakes because of this diagram.

    If we do abandon the concept of REAR and FRONT as I was advising many times, we will save our self and the user a big amount of time correcting misleading informations.

    I see the blue and black numbering being the same and correct (flipped by 120 deg.)
    Green numbering seems wrong.

    @Gabor Pittner
    Although your cabling respects the longitudinal axis, being out of standard, you may experience issues if you want to drive your platform with Ian BFF software.

    The actuator 1 and 2 (first pair) should correspond to the top and not the base of the triangle of the upper platform regardless if it's your front or back.

    Because REAR and FRONT are swappable, I would rather use this for reference:
    [​IMG]

    I hope it helps.

    Attached Files:

    • Agree Agree x 2
    Last edited: Feb 9, 2019
  9. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,159
    Location:
    Portugal
    Balance:
    15,270Coins
    Ratings:
    +2,535 / 17 / -0
    My Motion Simulator:
    6DOF
    When I was at university, internet was something starting... We had to go to retailers and beg for manuals and info just to make the projects in paper, not in reality.
    Sellers where always mocking us...
    Professors used what we where able to gather for their projects...
    Now with internet, everything is at the distance of a click...
    Yes, I'm that old...

    What are you studying? Mechanics, electronics? What year?
    For a university work, I was expecting something new and more innovating. Don't take it personal please.
    It's a shame to just repeat something already done many times in the same way.

    So, is that an EDC drive?
    Manuals I found:
    https://www.estuneurope.eu/wp-conte...li/Fielbus/EDC-CANopen-User-s-Manual-1-01.pdf
    https://www.anaheimautomation.com/manuals/servo/L010540 - Estun EDC Users Manual 2.0.pdf

    You have to look at the manual and see what you can feed to the drive to control it.
    You can use and ESP32 to control those drives, or maybe you don't even need them, I don't know if you can send serial directly.
    One thing is sure. The code I made for my rig, doesn't work here. It was made for BLDC motors and a driver that accepts direction and speed.
    If you can control the drives by serial, you can use directly the interface on this thread.
    Or make an Arduino, ESP32, STM32 or any other chip interface to receive the serial commands and control the drives.

    I'm sorry, for not helping much more. I need more free time.
    Steps you need to do:
    -See how to send commands to the drives
    -If it accepts serial, use the interface directly
    -If it doesn't accept serial, see what signal you have to send, how many pins you need on a board and how many boards
    -Make code for that board that receives info by serial from Simtools or this interface and generates the corresponding signals to the drives

    It's not meant to be easy, but it's not has hard as it looks, specially for someone who is studying engineering.
    When you know the basics of communicating with those drives, I might be able to give you some orientation for the next steps. Just ask.

    Good luck on your project.:thumbs
  10. Pierre Lalancette

    Pierre Lalancette Sir Lalancelot Gold Contributor

    Joined:
    Dec 11, 2016
    Messages:
    960
    Occupation:
    Tech Artist
    Location:
    Quebec, Canada
    Balance:
    7,785Coins
    Ratings:
    +896 / 6 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, 6DOF
    I got it to run with Asseto Corsa. I uninstall Simtools and reinstalled it with Antivirus off/Windows Defender off. I did the same for the plugins and I made sure to install all 3 files inside the plugin, and not just the dll like I thought at first.

    It works well. I only have 2 issues so far. I get the feeling of inverse roll in the curves, even at really low speed. I need to find a way to adjust this. But when I hit a side bump, the roll effect is as expected.

    But my real problem is yaw. As I turn around the track, I get violent yaw correction once in a while. I even got a track with a long straight line right at the correction point, and I was rotate from side to side like a new paint bucket in a shaker. I have the washout set in Simtools. What more can I do to get ride of that?

    Actually, I have a third problem. After 55 minutes in Asseto, I suddenly felt so sick, I had to stop right there and get out off the rig, otherwise, it would not have been pretty. I had to got to bed and I still feel a bit dizzy a few hours later. There is not much I can do, I will have to ease into it. I guess that's simply because I'm getting old. You know, old enough to know what a 8 inches floppy disc looks like.
    • Like Like x 1
  11. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,159
    Location:
    Portugal
    Balance:
    15,270Coins
    Ratings:
    +2,535 / 17 / -0
    My Motion Simulator:
    6DOF
    Saw the video on your thread. It's working! Now it needs to be tuned.
    First, if you think roll is inverted, try to swap it on the interface, in the checkbox next to roll.
    You notice the error in larger movements. Corners with gforces.
    When you pass over a corrector, it's mainlly vibration/short movements and you can't see if it's moving to the correct side.

    The yaw problem is strange. You might have used yaw in yaw and you should use extra1. Can you show me the settings in simtools?
  12. Pierre Lalancette

    Pierre Lalancette Sir Lalancelot Gold Contributor

    Joined:
    Dec 11, 2016
    Messages:
    960
    Occupation:
    Tech Artist
    Location:
    Quebec, Canada
    Balance:
    7,785Coins
    Ratings:
    +896 / 6 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, 6DOF
    Sure:

    setting_01.jpg

    I still have to enter Center Of Rotation X and Y by hand every times as they are not saved. And I cannot use the lowest position as it does not go back up.

    Yes, the yaw problem is the worst. I would really love to get rid of it.

    I've notice that the rotation needs to be dial down. With the pitch, if the game goes down a hill, I'm taking a dive. If it goes up, I'm climbing the Everest.

    I tried to inverse the roll. It was bad, really bad. I put it back right away. When my right wheels are passing on a bump, the right side goes up. So, it's set like it should.

    I guess now, I have to test one force at a time and play with range and gain until it feels right. A mute for each force would be useful then.
    Last edited: Feb 10, 2019
  13. Pierre Lalancette

    Pierre Lalancette Sir Lalancelot Gold Contributor

    Joined:
    Dec 11, 2016
    Messages:
    960
    Occupation:
    Tech Artist
    Location:
    Quebec, Canada
    Balance:
    7,785Coins
    Ratings:
    +896 / 6 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, 6DOF
    In the end, you were right, my roll was inverted. I don't know where I got the feeling it was not.

    I tone down quite a bit for my second run with Asseto Corsa. It feels much better.

    I put a Low pass filter to the yaw and it solved my sudden correction problem. It still adjusts, but at a less anoying speed.

    I put a print screen of my new setup on my thread: 6 DOF from scratch

    Did I said thanks for your nice program?
    • Like Like x 1
  14. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,159
    Location:
    Portugal
    Balance:
    15,270Coins
    Ratings:
    +2,535 / 17 / -0
    My Motion Simulator:
    6DOF

    The yaw problem is really strange.
    Was testing today and could not reproduce the problem. I keep looking.
    Only think I though:
    In Simtools, when you change washout, you have to close that "menu" and press save on the axis assignments again to apply that setting.
    If you don't apply washout, when the rig reaches the maximum rotation she stops rotating. When you reach the angle on the other side the rig jumps to the opposite side.
    In a basic track, this happens at least 1 time per lap.

    Found another problem when we minimize. It stops working, doesn't receive data from simtools.
    And I think that when you ask to go to lowest position, the limit switches are actuated, so by protection it stops working (SMC).
    Try reducing the actuator range to a value that doesn't allow the switch activation.
    • Informative Informative x 3
  15. Pierre Lalancette

    Pierre Lalancette Sir Lalancelot Gold Contributor

    Joined:
    Dec 11, 2016
    Messages:
    960
    Occupation:
    Tech Artist
    Location:
    Quebec, Canada
    Balance:
    7,785Coins
    Ratings:
    +896 / 6 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, 6DOF
    I will. This is probably it. The washout was never saved properly.

    I though about all the limit from smc3 that could interfere with the lowest position, but never tested it. That would make sens. Will test that too as soon as I can.
  16. SilentChill

    SilentChill Problem Maker

    Joined:
    Jul 19, 2014
    Messages:
    2,643
    Occupation:
    Railway Maintenance
    Location:
    Morecambe, Lancashire, England
    Balance:
    20,560Coins
    Ratings:
    +3,488 / 34 / -0
    My Motion Simulator:
    DC motor, Arduino, Motion platform, 6DOF

    Just wondering why you have Extra1 in Sway at 80% ? Would that not do very strange movements ?
  17. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,159
    Location:
    Portugal
    Balance:
    15,270Coins
    Ratings:
    +2,535 / 17 / -0
    My Motion Simulator:
    6DOF
    This way you rotate the rig with extra1 and apply sway to make the front static. That way it rotates around a point in the front.
  18. SilentChill

    SilentChill Problem Maker

    Joined:
    Jul 19, 2014
    Messages:
    2,643
    Occupation:
    Railway Maintenance
    Location:
    Morecambe, Lancashire, England
    Balance:
    20,560Coins
    Ratings:
    +3,488 / 34 / -0
    My Motion Simulator:
    DC motor, Arduino, Motion platform, 6DOF
    Ahh ok so what is the Yaw and Extra1 for in axis 4 ?

    Edit: also.i noticed the scale is still set to 1 will this not make the movement distances of the actuators wrong ?
  19. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    2,159
    Location:
    Portugal
    Balance:
    15,270Coins
    Ratings:
    +2,535 / 17 / -0
    My Motion Simulator:
    6DOF
    In the next images we see a rig from top view.

    Sem nome.jpg

    Left image is neutral position.

    Second image is just rotation.
    This rotation is generated by extra1. But since you want it to be traction loss, we need one more step to simulate the back end slipping.

    That's what we have with the 3rd image. We add sway.
    To achieve this, besides the normal sway, we need a sway related to extra 1.

    The 4th image is just rotation but with the center of rotation at the front, just for showing the result is the same.
    But in 4th image, center of rotation is at front, while in the others it's still at the real center.

    So resuming:
    We add extra1 in sway to compensate rotation and simulate traction loss with a rotation around a point at the front.
    In Yaw, we use extra1 and a bit of yaw. The yaw here is just to feel a bit of the corners. It has nothing to do with traction loss.

    For the scale, yes, it makes distances wrong. In reality, everything is relative.
    It's more to be sure we have precise movements, and that when we say 100 mm in sway, that's exactly what we want.

    Been experimenting with new code on my rig, and I'm using scale.
    I noticed an error, When we change scale with the rig at neutral position (everything zero), she should not move, but mine is moving. I'm taking a look at this, because I have a new version to post and I want this corrected.
    • Like Like x 1
    Last edited: Feb 12, 2019
  20. SilentChill

    SilentChill Problem Maker

    Joined:
    Jul 19, 2014
    Messages:
    2,643
    Occupation:
    Railway Maintenance
    Location:
    Morecambe, Lancashire, England
    Balance:
    20,560Coins
    Ratings:
    +3,488 / 34 / -0
    My Motion Simulator:
    DC motor, Arduino, Motion platform, 6DOF
    Ok I understand :thumbs I will have to add the extra1 to sway on mine see how it is because it feels ok now