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

Hoddem's DIY Linear Actuator

Discussion in 'DIY Motion Simulator Projects' started by Hoddem, May 23, 2017.

  1. adgun

    adgun Active Member

    Joined:
    Jan 28, 2008
    Messages:
    519
    Occupation:
    mechanic
    Location:
    Netherlands
    Balance:
    5,690Coins
    Ratings:
    +131 / 4 / -0
    1Nm with a 1605 ballscrew gives more than 100kgf but there is resitance in the actuator, it,s a safe number.
    Dont look to much at peak torque, the motor draws so much current it will burn out with in a minute.
    The Sabertooth 2x32 got soft current limitting you can set wished peakforce in controller and keep heat under control.
    More than 3G can become harsh
    regards Ad
    • Informative Informative x 1
  2. wannabeaflyer2

    wannabeaflyer2 Well-Known Member

    Joined:
    Jun 12, 2015
    Messages:
    724
    Location:
    london uk
    Balance:
    8,310Coins
    Ratings:
    +953 / 7 / -0
    My Motion Simulator:
    2DOF, Arduino, Motion platform, 6DOF
    Hi @adgun nice design in the making, and i take it that the anti rotation / Carbon tube holder is Profiled with just a small clearance to suit the internal profile of the extrusion . ( nice touch )

    Will you be using the AMT103/n Rotary encoders i think u have mounted to the rear end of the motor shaft ... only mention this because this new design is very clean in its make up and assembly as well as the added safety of no finger traps, as all the moving elements are enclosed ... Very nice concept , admire your work sir cheers for posting :)
    • Like Like x 1
  3. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    Well not a ton of progress on the actuator project this summer, I have been slowly ordering components over the last few months and I am happy to say that I will have the last few parts withing a week or two. Here is my makeshift assembly station.

    IMG_0252.jpg

    IMG_0253.jpg

    I have already done a full test assembly of one actuator, so once the last few parts are in it wont take long for final assembly.

    In the mean time I am slowly tearing down my existing rig and transferring everything to a new VR only setup. Here is the steering wheel assembly before and after, lots of weight reduction now that I am exclusively running in VR.

    IMG_0225.jpg

    IMG_0226.jpg

    IMG_0230.jpg

    IMG_0231.jpg

    Finally here is the concept for the new rig (minus a seat), as you can see I have left the seat mover attached so if all goes well I will have a 3dof chassis with a 2dof seat mover on top.

    IMG_0103.jpg

    I should have a full build guide for the new actuator up soon.
    • Like Like x 6
  4. Nick Moxley

    Nick Moxley Well-Known Member

    Joined:
    Dec 13, 2013
    Messages:
    2,779
    Occupation:
    Owner/Operator- Moxleys Rantals
    Location:
    Winnipeg Manitoba Canada
    Balance:
    17,056Coins
    Ratings:
    +2,506 / 30 / -2
    My Motion Simulator:
    2DOF, 3DOF, DC motor, JRK
    2dof motor placement, Imo you might want to raise them to above or Inboard the main frame rails. I see you have the SFX kinda mounted high, You ideally want the COG pivot as Low as possible and unfortunately you'll loose the room for the 2dof Motors.

    Im just now finalizing my 2dof + SFX setup. I look forward to seeing how yours comes together.
    • Agree Agree x 1
  5. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    Ya, like you said if I go much higher I will crash the seat mover motors. The seat mover design is carried over from before so its a proven working design that would be easy to use for this build. I still have a lot of decisions to make though and most of them will come through testing. The really great thing about the extruded aluminum is that I can just move stuff around as needed. If you notice the frame is pretty long (72 inches), compare that to about 55 inches for a simlab P1-X. I am purposely leaving the frame long and planning on condensing it down after I decide on final placement of all the components.

    Are you giving up traction loss on your sfx100 build?
  6. Nick Moxley

    Nick Moxley Well-Known Member

    Joined:
    Dec 13, 2013
    Messages:
    2,779
    Occupation:
    Owner/Operator- Moxleys Rantals
    Location:
    Winnipeg Manitoba Canada
    Balance:
    17,056Coins
    Ratings:
    +2,506 / 30 / -2
    My Motion Simulator:
    2DOF, 3DOF, DC motor, JRK

    Ya i went a tick longer with my base rails as well, Copying over my Previous dimensions from my 2x4 Rig, I also might be moving my motor's from current position to behind as im not sure im diggin the motor levers flopping up when no power is applied, I did opt for 50:1 But that they do No Lock out like many assumed when No Power is applied, Yes they are much stronger vs 25:1 in that regards but can easily still be moved with the forces at play on the End of the lever.

    Traction loss i decided i Had to get the base SFX and 2dof up and running and will look into TL next. I have No intentions on giving up the TL as much as many say they dont miss it, I drift and so do a few buddys who frequent the rig often and it would be a shame not to have that tail wagging feeling. Im not sure the 50:1 Gear motors up to swinging the BEAST that is this new rig, but if needed i'll look into other motor/ballscrew Actuator style for the TL motion.
  7. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    Pictures from the first actuator build with a little bit about each component.

    3d printer settings
    Material - eSUN 3d 1.75mm PETG black
    Printer - Prusa MK2.5S with MMU2.0
    Layer Height - 0.25mm
    Perimeters - 8
    Solid Layers - 12 top and bottom
    All other settings are default from prusa for generic PETG filament


    1.JPG

    Overview of all of the parts used.

    2.JPG

    End cap for the linear bearing installed
    1x Extrusion part # AFS-100100-10-250, Misumiusa.com
    1x Linear Bearing block 3d Printed - PETG - 13:37 - 70 meters of filament
    4x M10 x 40mm SHCS
    4x 10mm washer


    3.JPG

    Linear bearing installed
    1x LMK30uu Bearing
    4x M6 x 25mm SHCS

    4.JPG

    Slider attached to the ball screw
    1x Slider 3d printed - PETG - 15:17 - 73 meters of filament
    1x SFU1605 L250mm ball screw
    6x M5 x 30mm BHCS

    5.JPG

    Fixed end bearing attached to the ball screw
    1x FK12 ball screw end support

    6.JPG

    Ball Screw end support attached to fixed bearing block
    1x Fixed bearing block 3d printed - PETG - 15:27 - 75 meters of filament
    4x M4 x 25mm SHCS

    7.JPG

    Linear shaft inserted into slider
    1x 30mm Hollow Linear Shaft 270mm Long, 20mm ID

    8.JPG

    Fixed bearing block attached to extrusion
    4x M10 x 40mm SHCS
    4x 10mm washer

    9.JPG

    10.JPG

    Shaft coupler installed on ball screw
    1x shaft coupler 10mm x 12.7mm, D30 L42

    11.JPG

    Motor mounting plate attached to dc motor
    1x Ampflow E30-400 dc motor
    1x Motor mounting plate 3d printed - PETG - 3:54 - 20.5 meters of filament
    4x 8-32 x 0.625 SHCS
    4x #8 washers
    Note: Motor shaft has been trimmed down to match coupler length

    12.JPG

    Motor Assembly attached to extrusion assembly
    1x Spacer 3d printed - PETG - 7:04 - 35.4 meters of filament
    4x 1/4-20 x 3.00 BHCS
    4x 1/4 washers
    Note: The coupler was aligned with the sight hole in the spacer and then snugged. The motor was then removed (coupler halves separated) and coupler was tightened properly before re-assembly.

    13.JPG

    Encoder installed to motor
    1x encoder, E2-50-375-IE-D-G
    2x 4-40 x 0.375 BHCS
    1x encoder cable
    Note: encoder was already installed from previous actuator build, it is best to install first.

    14.JPG

    End cap added
    1x End cap 3d printed - PETG - 2:39 - 13.4 meters of filament
    4x 8-32 x 1.0 SHCS

    15.JPG

    Finished Assembly!
    • Like Like x 1
    • Informative Informative x 1
  8. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    So I was playing with my new actuator using a drill to run it in and out and this happened.

    IMG_0308.JPG

    IMG_0309.JPG
    My first instinct was to blame the printer or the material, but if you look at the parts they did not break along the layer lines. What happened was I ran the slide to the maximum travel of the actuator at which point it makes contact with the linear bearing. The bearing is held in place with 4x M6x25mm screws, its hard to see but the print failed below the 4 mounting screws. ultimately I think this part will fail every time because no matter how beefed up I make it, it will still only be 4x M6 screws holding the force of the actuator.

    Here is the fix
    upload_2019-10-2_13-57-46.png

    Now when the slide crashes into the new spacer it will put even pressure on the entire linear bearing block and on the other side are 4x M10 bolts threaded into the aluminum extrusion to help support the force. Initially I am going to print this spacer as a separate part because I already have most of my parts printed, but it could easily be printed as one piece.

    Another option would be to flip the linear bearing around so the mounting screws are inside the actuator, that would give a similar effect and spread the force out even more. The bearing housing would need to be slightly modified with a grinder or dremel though so I am going to go with a spacer.

    upload_2019-10-2_14-6-5.png


    Now this should never happen once the kangaroo and sabertooth 2x60 are controlling the actuator so it may not actually be a problem, but I feel I should at-least throw a spacer in for the little effort it will take.

    Attached Files:

    • Informative Informative x 1
  9. Thanos

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

    Joined:
    Jul 6, 2017
    Messages:
    1,359
    Occupation:
    Electronics Engineer
    Location:
    United States
    Balance:
    2,779Coins
    Ratings:
    +1,051 / 9 / -0
    My Motion Simulator:
    AC motor, Motion platform, 4DOF, 6DOF
    SFX100 actuator fitted with DC motor! Cool!

    Just take care in case the motor run off... you don't want to hit the end-stops fast!
  10. Thanos

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

    Joined:
    Jul 6, 2017
    Messages:
    1,359
    Occupation:
    Electronics Engineer
    Location:
    United States
    Balance:
    2,779Coins
    Ratings:
    +1,051 / 9 / -0
    My Motion Simulator:
    AC motor, Motion platform, 4DOF, 6DOF
    I was typing while you were posting this... I guess you already found out what may happen :p
  11. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    Too late! 3d printed parts are no match for a Dewalt 20v drill at max speed and a 1605 ball screw. Thankfully the Kangaroo motion controller is much better at motion then I am.
    • Funny Funny x 2
  12. Gadget999

    Gadget999 Well-Known Member

    Joined:
    Dec 27, 2015
    Messages:
    1,937
    Location:
    London
    Balance:
    11,850Coins
    Ratings:
    +475 / 9 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino, 6DOF
    has a dewalt drill got enough torque and rpm to run a ballscrew actuator ?

    how well does it change direction ?
  13. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    Yes a Dewalt drill runs it great, too well obviously as I smashed mine pretty good.
    The drill was just for testing though, I wont be using it for my actual rig.
  14. wannabeaflyer2

    wannabeaflyer2 Well-Known Member

    Joined:
    Jun 12, 2015
    Messages:
    724
    Location:
    london uk
    Balance:
    8,310Coins
    Ratings:
    +953 / 7 / -0
    My Motion Simulator:
    2DOF, Arduino, Motion platform, 6DOF
    Hey @Hoddem excellent write uo and assembly Process Pictures , i just converted my ^dof Liner actuator to AASD15A servo motor drive and Now Have Both SFX Variants ... i too looked at going the SFX route but with minor tweaks to the design ... Controller all here now and just waiting for few mare actuator parts as i switched to 100 x 100 Kinetik Extrusion .. Great work wil post the Pics On my Wannabes 4DOF actuator post..

    Attached Files:

    • Like Like x 2
  15. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    @wannabeaflyer2 that is awesome man I will be sure to follow your thread. I haven't been on xsimulator much the last year or so, lots of catching up to do.
    • Like Like x 1
  16. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    Small update, I finished assembling all 4 actuators. not a lot of pictures for this update.

    I didn't buy the encoder cables from US digital because they are expensive and I'm not sure how long I will need them overall. I ended up picking up a 50ft shielded cat 6 Ethernet cable off of amazon. I split that into 4 equal length cables and then terminated each end to make the encoder cables. The Ethernet cable comes with a drain wire so I connected that to ground on one end and left it floating on the other end. I have the ground and drain end connected to the kangaroo motor controller.

    Once I had my encoder cables made up I started setting up the sabertooth/kangaroo combo. I wanted a way to test the system without hooking up power supplies so I connected 3x dewalt 20v 5AH batteries in parallel as the power supply for the sabertooth 2x60s. Then I assembled all 4 actuators into a square and added my racing chair.

    IMG_0381.jpg

    After setting up the kangaroo/sabertooth combo in describe and then running through the simtools game engine setup I was able to control all 4 actuators. I have a lot of tweaking to do, but my kids absolutely love this thing. I just play with the sliders and try to knock them out of the chair. I was able to get about 15 minutes of testing before my batteries were dead.




    I wasn't able to get a good "tune" on the kangaroo's and the motion seems pretty jumpy. I'm hoping its a combination of using under-powered batteries and not getting the tune correct, but I wont know until I get the setup moved to the garage for more testing. (I now have 4 massive dents in the carpet, Wife Not Impressed).

    I also started mocking up the new rig, again I left some of the rails long so I can move and test things before I commit to trimming it down.

    59277720997__A4734F12-92FD-4F91-967E-F57E31A10442.JPG

    This brings me to my next challenge, and from reading the forums there seems to be some strong opinions on this topic.

    4 actuators vs 3 actuators
    As you can see I have already started mocking up the rig for 3 actuators, but I do have 4 built and it seems a shame to let one go to waste. (future traction control maybe)

    4 Actuators in the corners

    upload_2019-10-15_15-20-9.png


    4 actuators spaced evenly around the seat

    upload_2019-10-15_15-18-59.png

    3 actuators, 1 in front
    upload_2019-10-15_15-27-55.png

    3 actuators 1 in rear, I can move the front actuators further forward to give more stability as needed.
    upload_2019-10-15_15-33-48.png

    I can test all 4 configurations easily enough, but In my mind I want the center of rotation to be as close to centered on my seat as possible.

    I also had a few spare minutes to work on my power supplies, I got the final wiring done on two of them.

    IMG_0393.jpg

    I ended up pulling the connector of the power supply, soldering the pin headers so that it powers up as soon as it is plugged in and then soldering wires in. The supply labeled floating has all of the case grounding removed so that it can be connected in series with the other supply to get 24v output.

    IMG_0394.jpg

    A couple of observations from my limited testing.
    1.5" x 3" extrusion is not stiff enough, I am getting a ton of flex. I may look into 1.5"x4.5". I know the simlab chassis is using 40x160 roughly 1.5 x 6". I have enough extrusion that I could make my own 1.5x6 bars.

    sim tools does not play nicely with the kangaroo and homing on startup. During the homing sequence the kangaroo ignores all new commands. during that time simtools sends positional commands and then once the kangaroo is homed, BAM the rig jumps to center at full speed. This would be avoided if the rig is already homed and ready when simtools is started. Another option would be to put a pause in the output to allow the kangaroo to finish homing.

    @yobuddy is there anyway to invoke a pause/delay in sim tools when sending the startup commands? I imagine not, but that would be very helpful here. I see that if I set the startup to 5000ms it will send all the commands and then wait for 5 seconds before sending positional commands, but that still leads to a big jump to after 5 seconds.

    ideally I could do something like this
    1, start
    1, home
    simtools delay 5 seconds
    1, p600 s200 - move to center at a slow speed

    upload_2019-10-15_15-50-55.png
    • Funny Funny x 1
  17. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,162
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    148,658Coins
    Ratings:
    +10,915 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    That giggle is infectious :grin
    • Agree Agree x 5
    • Like Like x 1
    • Friendly Friendly x 1
  18. JAD

    JAD Active Member

    Joined:
    Jan 17, 2016
    Messages:
    205
    Location:
    Australia
    Balance:
    1,446Coins
    Ratings:
    +141 / 3 / -0
    Regarding your last point about using the startup commands to home and delay.
    I have a similar thing where I need to go through a homing routine but I found it not suitable to do this via the startup option in Simtools.
    I found it was getting tedious going through the homing sequence on every startup.
    Especially in the early stages while fiddling around with tuning and fault finding other issues, you start and stop many times.

    I used Foxterm as a separate and standalone app where the commands and serial connection parameters are defined in separate macro files and xml files.
    Then you setup one or more foxterm.exe shortcuts with parameters to run those startup macros.
    I then pinned the shortcuts to the windows start panel (another option is the quicklinks in Simtools)
    With it that way, its a quick task to hit windows key, tap the applicable shortcut to go through homing and move to the middle position,
    The foxterm app will launch, connect to the port, run the macro, then closes the ports and exits the app so nothing else to do or click to move on.
    I only do this once for the evening and then following that its all Simtolls or Mover driving it therafter.

    I have a few macros setup in my case due to a long ballscrew.
    I have a homing routine that finishes in the bottom position, so I can climb in.
    When I'm sitting in the rig, I tap the shortcut to raise to the middle position (becasue climbing out of the rig at middle position is a bit high and akward and Im gonna trip over one day.)
    I also have a macro to goto highest position so I can oil the ballscrews.

    I also did this with the powerdown. My rig backdrives on powerdown and it kept dropping everytime it disconnected from Simtools if using powerdown on shutdown.

    With powerdown separate, then everytime you disconnect from Simtools or Mover, it holds the last position until you powerdown separately when your ready.
    • Like Like x 2
  19. JAD

    JAD Active Member

    Joined:
    Jan 17, 2016
    Messages:
    205
    Location:
    Australia
    Balance:
    1,446Coins
    Ratings:
    +141 / 3 / -0
    This is a good opportunity to raise a feature request with @yobuddy for the next version.
    It could be an additional tool button where its a one shot startup routine that runs a single command line using the current interface parameters.
  20. Hoddem

    Hoddem Well-Known Member

    Joined:
    Sep 27, 2016
    Messages:
    404
    Occupation:
    Engineer
    Location:
    Minnesota, USA
    Balance:
    3,342Coins
    Ratings:
    +715 / 2 / -0
    @JAD, that is a pretty good solution. I have to admit I was thinking about something similar, but it would have been a really basic script. This seems like it will be way cleaner and your right, honing every time I start simtools may not be ideal.
    I will bookmark FoxTerm and play around with it when I get time.

    thanks for the info.