You may ask why we built our own stepper motor driver instead of using existing one? This is very good question.

Long story short. We have evaluated many different stepper motor controllers available on the market and each of them have at least one of the following major issues:

We have not found a product that is free from all above issues. On one hand, there are solutions that are great from technical point of view but there are just too expensive. On other hand, products that have reasonable price are not so great if we consider their features.

We needed something that is dedicated for motion platforms but universal enough to be used also in other applications. We needed fast and accurate stepper motor controller which offers PLC functionality. We needed device that works in closed loop mode and does not required "ticks" applied from external control. We needed something that has reasonable price. The answer was PS-SMC100.


PS-SMC100 is a very accurate, high performance motor driver that can handle 4 coils stepper motors and high demanding DC motors.

It supports automatic control resumingWhen huge external force is applied on motor's shaft, desired position will not be reached. However PS-SMC100 automatically detects when the force is gone and resumes motor control routine as soon as possible - no resets or other external input signals are required in that situation.

The controller works in close loop mode - it measures current on coils and it uses encoder (or potentiometer) to verify motor position.

It have ticks/direction interface via digital inputs but it works best with high speed RS-485 in half duplex mode with simple but powerful protocol or CAN. Full SDK with protocol specification and examples is delivered together with the controller.

PS-SMC100 can be put into stack and managed by external unit (or embedded PLC) which makes it compatible with our standard motion software but also adds support for USB and Ethernet.


Supported motor types

Power supply

Communication interfaces

Control protocol

PLC mode

With extension card from PS-SMCE0x family installed, the PS-SMC100 becomes fully programmable logical controller. However instead of Java, Javascirpt or quasi script language, full power of C/C++ is used here.
Our PLC solution uses 2 connected micro-controllers, one is used to control motor at runtime and another one is used only for PLC. This means that PLC micro-controller is fully programmable, there are no limitation. It does not mean that everything has to be written from scratch because as part of SDK we provide easy in use API that includes IPC and I/O libraries. This means that the controller can be programmed by beginners but also by experienced developers.
  • Full hardware separation - communication between PS-SMC100 and PS-SMCE0x is done via IPC API
  • Fully programmable STM32F1xx or STM32F4xx micro-controler
  • Micro-controller clock speed - from 72MHz to 168MHz
  • Flash can be written by main micro-controller so no external hardware is required
  • Optional additional I/O ports dedicated for PLC
  • Optional USB port dedicated for PLC
  • Optional Ethernet dedicated port for PLC
  • Optional RS-485 dedicated port for PLC

Coming soon. Check out our Facebook or News RSS to receive latest news.