By using an encoder or pot on the back of a motor it is possible to actively monitor the exact speed of the motor and adjust it at any time to the speed required. This is called a closed loop system. An incremental encoder works by pulsing as the shaft turns and then sending these signals back to controller. This enables the controller to read the speed of the pulses and therefore accurately calculate the speed. An absolute encoder or pot works in a similar way but uses the variable resistance of the pot or the electromechanical construction of the encoder to enable the controller to calculate the absolute position of the shaft.
Hall effect sensors are largely used in brushless DC motors as a method for sensing the position of the shaft within the motor itself. These sensors are (perhaps rather predictably!) only found in sensored brushless DC motors and not in sensorless brushless DC motors. Bear in mind that sensored brushless DC motors can be driven by sensorless brushless DC motor controllers but that sensorless brushless DC motors cannot be driven by sensored brushless DC controllers…
All of these methods can be used to accurately judge the exact speed of the motor shaft and therefore make adjustments and can be used in both brushless motors or stepper motors (or indeed brushed DC motors). In all of these cases a change in the actual speed of the motor which was caused by an increase or decrease in load would be instantly picked up by an intelligent controller such as the ZD10 Stepper Motor Driver or the ZDBL15 Sensorless Brushless DC Motor Controller and the ZD10 or ZDBL15A could then be programmed to increase or decrease the power going into the motor to correct the speed.
Please note that in such systems safety features can become very important as there is obviously a cut off point at which the stepper motor controller or BLDC motor driver will not be able to deliver the power required to turn the motor if too much load is applied (ie the top power rating of the controller and/or motor). By having maximum current settings and other protective measures it is possible to protect the motor and controller by simply stalling the system and highlighting the error accordingly