Share
How to Control DC Servo Motor

Types of Controls for DC Servo Motors

A DC servo motor is a type of DC motor that provides fast precision position control for closed-loop position control applications. Closed-loop position control simply means a system with real-time feedback. It works on a so-called “servo-mechanism” that uses position feedback to control the speed and final position of the motor.

There are two types of controls for DC servo motor:

  • PWM-based DC servo motor control
  • DSP controller-based DC servo motor control

PWM-based DC Servo Motor Control:

Introduction

A PWM-based DC servo motor is driven by control pulses usually provided by a programmed controller to produce a DC reference voltage corresponding to desired position or speed of the motor.

Hardware Architecture

This type of DC servo motor is an assembly of four major components, namely

  1. a DC motor,
  2. a position sensing device,
  3. a gear assembly,
  4. and a control circuit.

The following Block diagram shows the structure of the PWM-based DC servo motor

Structure of the PWM-based DC Servo Motor
Structure of the PWM-based DC Servo Motor

Software Design

A motor control algorithm is developed that will be programmed to the microcontroller to generate control signals for the position and speed control of the DC servo motor. For commonly used motors, libraries are often available already.

Example

SG90 is a PWM-based DC servo motor that is connected with Arduino. The Arduino drives the motor using control pulses.

SG90 - A PWM-based DC Servo Motor Interfaced with Arduino UNO
SG90 – A PWM-based DC Servo Motor Interfaced with Arduino UNO

DSP controller-based DC Servo Motor Control:

Introduction

DSP Controller-Based DC Servo Motor Control
DSP Controller-Based DC Servo Motor Control

A DSP controller-based DC servo motor has precise control of parameters like position, speed, and torque with high reliability. This type of motor is driven by the host controller which could be a PC running a motor control script or some other programmed controller.

The function of the host controller (e.g. PC) is sending instructions, for example via UART, to the DSP controller in order to drive the motor. The core part of the DSP controller is the minimum system based on a DSP chip which is specially developed for the application of the motor. Many off-the-shelf DSP controller-based DC servo motors are available such as the DYNAMIXEL XM series motors.

Hardware Architecture

The entire motor control system includes the host computer, motor driving part, parameter storage, and signal sampling and processing part.

The following block diagram shows the structure of the DSP controller-based DC servo motor

Block Diagram of DSP controller-based DC Servo Motor Control
Block Diagram of DSP controller-based DC Servo Motor Control

Software Design

The software development kit for your PC (or host controller) is usually available for this type of motor that provides control functions using packet communication. Such software development kits support various programming languages e.g. C#, C++, python, Java, MATLAB, and LabVIEW.

Example

DYNAMIXEL XM540-W270-T/R is a DSP controller-based DC servo motor that supports command signals in the form of digital packets.

DYNAMIXEL XM540-W270-T.R - A DSP Controller-based DC Servo Motor
DYNAMIXEL XM540-W270-T.R – A DSP Controller-based DC Servo Motor

Comparison of PWM-based DC Servo Motor with DSP Controller-Based DC Servo Motor

FeaturesPWM-based servo motorDSP controller-based servo motor
PrecisionNo feedback to a controller device, therefore less preciseHighly precise control of position, speed, and torque
Applications·      Used in robots like Biped Robot, Hexapod, robotic arm, etc.·      Used for a steering system in RC toys·      Robots where position control is required without feedback·      Less weight hence used in DOF robots like humanoid robots·      Antenna Positioning·      Woodworking / CNC machines·      Metal cutting and Metal forming machines·      Robotic vehicle
Power ConsumptionDrive small loads hence, consume low powerDrive large loads, therefore consume more power
ExampleSG90·       Input voltage: 4.8-6VDC·       Current: 100-250mA·       Command signal: PWM·       Degree rotation: 180°(±15°)DYNAMIXEL XM540-W270-T/R·       Input voltage: 12V·       Current: 4.4A·       Command signal: Digital packet·       Degree rotation: <360°(±0.088°)
CostTypically lowTypically high

 If you have any questions regarding Control of DC Servo motors or their performance or any other hardware design challenge in general, feel free to Contact Us for our consultancy.

References:

  1. Robotis, DYNAMIXEL (a smart actuator system)
  2. Haiyan Hu *, Hong Gu, Chunguang Li, Xiaowei Cai and Juan Li, The Design of DSP controller-based DC Servo Motor Control System
  3. Electronics Hub, Servo Motor – Types and Working Principle
  4. Electrical 4 U, Theory of DC Servo Motor
  5. Circuit Digest, Servo Motor Working Mechanism
Was this article of help to you?
Subscribe to our newsletter. We write about developing embedded and electronic systems.

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe Our Newsletter