Low Cost Linear Actuator using Johnson Electric PLG motor

It’s still a bit of a work in progress but I wanted to share something I’ve been working on for an easy to build low cost linear actuator using 3D printed parts and readily found components. Low tech and Minimal machining was the target for this design. It uses the Johnson Electric PLG motor offered through FIRST choice but I’m sure it can be adapted to other motor solutions with a few tweaks. As a note, I work for Johnson Electric which donates this motor.

This would be good for positioning mechanisms or shooters with decent precision and will hold position very well. I’ve built it and it’s quite robust but hasn’t been put through any high durability FRC type real world testing. I would appreciate any feedback if anyone has the interest to try it out. The actuation speed with a 4 start lead screw one would find in most 3D printers and easy to find on Amazon is on the order of 3 inches / second no load. I’m sure it can be sped up with higher start lead screws.

Attached is some BOM detail to help illustrate. Also, included a step file. The 3D printed PLG motor mount is a new design and is multi-purpose for other applications.

For viewing…

BOM PLG Linear actuator.xlsx (1.4 MB)

Step file is uploaded here…

Native CAD is Fusion



You mentioned the no load speed. Any idea what the stall load is? I’m assuming that since you are using your own lead screw, the actuation distance could be anything you wanted.

I don’t know much about that motor. Does it include a built in encoder, or would you need to integrate an encoder into the total mechanism to achieve position feedback on the actuator?


@kprzewodek access is denied to the STEP file in the Google Drive. You may not have set permissions properly.

Yes it has a built in encoder. I’ll try and get some more accurate parameters for stall Force and actual no load speed.

Additional motor parameters…

1 Like

Oops. Sorry. Should work now.

You might want a thin spacer between the shaft collar and the bearing to act as a boss for the shaft collar so it only contacts the inner race of the bearing rather than rubbing partially against the fixed surface of the bearing.

I may be missing something, but what stops the inner tube from rotating along with the lead screw? Are you assuming that whatever the inner tube is mounted to will prevent rotation?

The inner tube does need to be mounted to prevent rotation. Since you only need a small force to keep from rotating it often extends with just the frictional resistance.

I’ll have to check again on the bearing question. I thought it was just contacting the inner race. Ideally it would probably be a thrust bearing and I had that in another design iteration but it just added complexity and didn’t seem to be much benefit.

Hi Kevin,

Do you by chance have the step file with just the motor mount part of the design? i cant find it anywhere else

Hi Spazzy,

Do you mean this…

It is located in the screensteps detail page under downloads.

Hope it helps.


its just keeps opening in chrome. i cant get it to download so i can make it a stl file to print

If you right click and then “save link as” it will download. Seems to be a bug with the webpage. I did mention that issue but there was no fix.

Direct link to an STL file can be downloaded here…https://a360.co/34Naa2s

Thank you so much, thats perfect

We’re having an issue with the hex shaft (with square input) pulling out of the PLG motor. How have you handled this?

Can you help clarify what your design looks like? You need a shaft collar to keep it from pulling out as friction isn’t enough and due to wear it will loosen over time. Unfortunately adding enough friction to retain borders on too much interference and not being able to install.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.