The linear BLDC motor driver was build based on a microcontroller with ARM Cortex-M core. It allows for fast computation of control signals which in turn guarantees efficient work of a BLDC motor.
A sinusoidal control algorithm with constant momentum was implemented on the device. Thanks to this algorithm the movement of a linear cart is stable in each phase (acceleration, constant velocity, deceleration). What is more, the encoder with described controller allows to achieve movement with high precision up to 0.1um (micro meter).