PID Control with SMC G2 18v25 Motorcontroller and Arduino

Hello to all of you,

we are currently doing a project at our university with your motorcontroller SMC G2 18v25.

Our aim is to control the position of a DC-Engine.

Our Arduino Mega is connected to the motorcontroller and the motorcontroller is connected to the engine. We want to control the position of the engine with a PID-Control implemented on our Arduino Mega.

Do you have experience with that kind of control, respectively do you know, if that idea could work?

Would be great to hear from you!


The Simple Motor Controllers cannot process any type of position feedback, so any feedback and PID control would need to be processed by your Arduino. How that works will depend on the type of feedback device you are using (e.g., encoder, analog potentiometer, etc.).

By the way, we do have a few types of motor controllers, like our Jrks and RoboClaws, that can process certain types of feedback for closed-loop PID position and velocity control. It might be easier to get something working with those, or you might consider checking out their user’s guides since learning how they work might help you design your own system.

- Patrick

Thanks for your reply Patrick.

The DC-engine has a poti to get a data back to arduino.

Do you have any kind of experience in that kind of control or do you know good websites to search for it ?

Our Jrk motor controllers that I mentioned before are designed and manufactured by us, and they implement that kind of control. They were designed to make it easy to implement PID control in systems with analog feedback, such as feedback from potentiometers. I did a quick Google search and it seems like this article might be an okay place to start learning how you can use an Ardunio for PID control.

- Patrick