The Magellan® MC54113 Stepper Motor Control IC is a member of PMD's Magellan Motion IC Family. The MC54113 provides trajectory generation, microstepping, quadrature encoder input, stall detection, closed loop stepper control, advanced motion trace, and more. Amplifier connection options include direct signal generation to drive an on-board amplifier bridge or PMD’s Atlas Digital Amplifier.
The MC54113 can be driven with pulse & direction signals or can perform internal profile generation. Available profile modes include trapezoidal point-to-point, s-curve point-to-point, velocity contouring, electronic gearing, and continuous contouring with multi-axis synchronization. The MC54113 directly generates PWM (Pulse Width Modulation) amplifier control signals for a two-phase step motor with shoot-through protection and direct leg-current signal input. PMD’s proprietary digital current loop technology provides ultra smooth, ultra quiet stepper motor operation.
The MC54113 IC together with other Magellan ICs provide a family of dedicated motion control ICs which share a similar architecture and which all speak C-Motion, PMD’s award winning C-language motion library. Pro-Motion, a Windows-based exerciser program, supports quick-setup via an Axis Wizard and includes configuration save, a scope/trace function and many other features to make application development fast and easy.
Part of the MC58113 Family of Single-Axis Motor Control ICs
There are four different members of the MC58113 family of motor control ICs, each supporting a different motor type; either stepper motor, DC Brush, Brushless DC, or multi-motor (software settable motor type).
DK54113 Developer Kits
A Developer Kit is available for the MC54113 Stepper Motor Control IC, P/N: DK54113. The developer kit includes:
- MC58113-family IC Developer Kit Board
- Pro-Motion Software
- C-Motion software development kit (SDK)
- Complete documentation set
- Complete cable and prototyping connector set
Figure 1: DK54113 Developer Kit
MC54113 Feature List
- Single axis, single IC
- Microstepping signal generation up to 256 uSteps/fullstep
- Ultra-quiet operation via high performance PI current control loop
- Incremental encoder quadrature input (up to 25 Mcounts/sec)
- S-curve, trapezoidal, velocity contouring, electronic gearing, and continuous contouring profile modes
- Pulse & Direction signal input
- SPI (Serial Peripheral Interface), serial RS232/485, and CANbus communications
- High/Low switching amplifier control with programmable deadtime and charge pump refresh
- Internal hardware motion trace of four variables simultaneously
- Synch pin feature allows multiple axes to be synchronized to <1 μsec
- Overcurrent, over/undervoltage and overtemperature detect
- Direct support for PMD’s PCB-mountable Atlas Digital Amplifier
- Directional limit switches, index, and home inputs
- Encoder-based stall detection
- Pulse & direction signal output
- General-purpose analog input
- Velocity, position, and acceleration changes on-the-fly
- Separately programmable acceleration and deceleration
- Non-volatile storage of control settings via internal NVRAM
- Compact 100-pin TQFP package
Internal Block Diagram
Figure 2: MC54113 Internal Block Diagram
Interconnection Diagram
Figure 3: MC54113 Interconnect Diagram
Typical Applications
Position Control of Stepper Motors
Figure 4: Position Control of Stepper Motors With On-board Amplifier
Applications: Laboratory automation, mobile robotics, scientific equipment, spindle control, liquid pumping, industrial automation, general purpose motion control.
In this configuration a MC54113 IC receives commands from a host microprocessor, PC, or other controller sent via CAN, serial, or SPI and provides high performance microstepping motor control of a two-phase stepper motor. The commands sent by the host specify information such as desired trajectory parameters, current loop gain settings, safety settings, and other parameters. PWM amplifier control signals are output to a dual H-bridge amplifier located on the same PCB and current feedback signals from the switching circuit are input directly back to the MC54113 IC.
Quadrature encoder signal input is supported but is optional for step motor control.
Position Control of Stepper Motors Using Atlas Amplifier
Figure 5: Position Control of Stepper Motors Using Atlas Digital Amplifier
Applications: Laboratory automation, mobile robotics, scientific equipment, spindle control, liquid pumping, industrial automation, general purpose motion control.
In this configuration a MC54113 IC outputs incremental position commands via an SPI bus connection to an Atlas Digital Amplifier located on the same PCB. The Atlas amplifier performs microstep waveform generation, current control and amplification. Three power ranges of Atlas amplifiers are available: 500W, 250W, and 75W.
Other than the approach toward amplification, the control features provided with this configuration are the same as for the previously described configuration.
Position Control of Stepper Motors Using External Pulse & Direction Amplifier
Figure 6: Position Control of Stepper Motors Using External Pulse & Direction Amplifier
Applications: Laboratory automation, mobile robotics, scientific equipment, spindle control, liquid pumping, industrial automation, general purpose motion control.
In this configuration a MC54113 IC outputs pulse & direction signals to an external amplifier. This amplifier can be located on the same PCB as the MC54113 IC or connected remotely via cable. Note that this configuration may also be used to drive servo motors if the amplifier used is capable of performing position servo control and accepts a pulse & direction command data stream.
Other than the approach toward amplification the control features provided with this configuration are the same as for the previous configurations.
Closed Loop Stepper Motor Operation
Figure 7: Closed Loop Operation of Step Motors
Applications: Laboratory automation, textile equipment, high acceleration applications, electronics manufacturing equipment, die bonding, industrial automation.
In this configuration a MC54113 IC executes closed loop stepper control of a step motor. In this control mode the stepper motor is operated as a two-phase servo motor, using commutation and variable torque command output rather than microstepping control. Relative to full, half, or even microstepping motor control closed loop stepper provides significantly higher effective acceleration, smoother motion, less noise, and elimination of lost steps.
Quadrature encoder input is required for closed loop stepper motor operation. Other than use of closed loop stepper versus microstepping control the features provided with this configuration are the same as for the previous configurations.
CAM Profile Control of Stepper Motors
Figure 8: CAM Profile Control of Stepper Motors
Applications: Textile, winding equipment, key cutting, packaging equipment, laboratory automation, mobile robotics, thin film handling, liquid pumping.
In this configuration a MC54113 IC inputs a quadrature position data stream from an external encoder and uses it as the master command for execution of a cam or electronic gear profile. The cam profile shape is stored by the user directly in the MC54113’s RAM buffer.
Execution of camming and multi-axis synchronized contouring is enabled via User Defined Profile Mode, which is available in a special version of the MC54113 IC. For more information on MC54113 ICs with User Defined Profile Mode contact your local PMD representative.
In addition to the encoder command input to drive the CAM lookup position a second quadrature encoder input channel used for stall detection is supported but optional.
Multi-Axis Synchronized Contouring Control of Stepper Motors
Figure 9: Multi-Axis Synchronized Contouring of Stepper Motors
Applications: Label cutting equipment, multi-dimensional contouring, laboratory automation, scientific equipment, 3D printing, industrial automation, general purpose motion control.
In this configuration MC54113 ICs are connected in a multi-axis configuration. A single host such as a microprocessor, PC, or other controller sends commands to the connected MC54113 series ICs via CAN, RS485, or SPI. For applications which require tight synchronization MC54113 series ICs support a hardware Synch signal which allows sub-microsecond synchronization of multiple axes.
Depending on the application, standard Magellan profile modes such as trapezoidal, S-curve, or velocity contouring profiles may be used. Alternatively, to perform multi-dimensional synchronized contouring with arbitrary shapes a special version of MC58113 series ICs that supports User Defined Profile Mode is used. For more information on MC54113 ICs with User Defined Profile Mode contact your local PMD representative.
Although only MC54113 stepper motor control ICs are shown in the diagram it is possible to control different motor types in the same tightly synchronized network. For example PMD’s MC53113 Brushless Motor Control IC could be used in place of the MC54113 IC, as could the MC51113 DC Brush Motor Control IC allowing intermixing of motor types within a single multi-dimensional contouring system.
MC54113 Product Feature Highlights
Here is more information on selected functions provided by the MC54113 Stepper Motor Control IC:
- Advanced Instruction Set
- S-curve profiling
- High efficiency digital switching motor amplifier control
- Motion Trace Capture
Advanced Instruction Set
The MC54113 IC is a member of PMD’s software compatible Magellan Family of Motion Control ICs. Magellan instructions are encoded in packets, which are sent to and from the Magellan Motion Control IC. The Magellan processes these packets, performs requested functions, and returns requested data. Generally speaking, each command packet has its own C-Motion library call associated with it.
Example Magellan Instructions
The Magellan instruction set is flexible and powerful. The following very simple example, which sets up and executes a trapezoidal profile, illustrates just a small part of the overall command set. In addition, this sequence shows the look and feel of C-Motion, PMD’s C-language callable motion interface that handles communications to and from all machine controller board resources.
PPMDSetProfileMode(&hAxis1, PMDProfileTrapezoidal);
|
// set profile mode to trapezoidal for axis 1
|
PMDSetPosition(&hAxis1, 12345);
|
// load a destination position for axis 1
|
PMDSetVelocity(&hAxis1, 223344);
|
// load a velocity for axis 1
|
PMDSetAcceleration(&hAxis1, 1000);
|
// load an acceleration for axis 1
|
PMDSetDeceleration(&hAxis1, 2000);
|
// load a deceleration for axis 1
|
PMDUpdate(&hAxis1);
|
// initiate the move
|
hAxis1 is a handle to a structure known as a PMDAxisHandle. There are several different C-Motion structures, and in general, they are used to make accessing the MC54113 ICs simpler and more flexible. In particular, by developing code with C-Motion it is very easy to change the physical location of a PMD axis without any changes to the developed C-Motion code sequences. This is called axis virtualization and is a powerful feature of the C-Motion/Magellan IC system.
Seven-Segment S-Curve Profiling
Figure 10: S-curve Profile
While trapezoidal profiles are very common in motion control, the S-curve profile is actually the workhorse for point to point motion because of its greater ability to control the amount of vibrational energy injected into the load. S-curve profiles add a limit to the rate of change of acceleration to the trapezoidal profile. This parameter, known as jerk, specifies the maximum change in acceleration per unit time.
Figure 11 shows a typical S-curve profile. In Segment I, the S-curve profile drives the axis at the specified jerk (J) until the maximum acceleration (A) is reached. The axis continues to accelerate linearly (jerk = 0) through Segment II. The profile then applies the negative value of the jerk to reduce acceleration to 0 during Segment III. The axis is now at maximum velocity (V), at which it continues through Segment IV. The profile will then decelerate in a manner similar to the acceleration stage, using the jerk value first to reach the maximum deceleration (D) and then to bring the axis to a halt at the destination.
High Efficiency Two-Phase Stepper Switching Motor Amplifier Control
MC54113 Series ICs provide control of an on-PCB digital power stage with PWM (Pulse Width Modulation) control and leg current feedback. Stepper motors are driven with two H-Bridges, one for each phase, for a total of 8 switches.
MC54113 ICs use an advanced PWM switching scheme that minimizes the ripple current on the motor windings while maximizing the current loop performance. The PWM frequency is selectable between 20 kHz and 80 kHz to cover a broad range of motor inductance. The fundamental frequency of the ripple current is at twice the PWM frequency and well out of the audible range in all cases.
A representative diagram of the switch and current sense configuration is shown in Figure 12. In addition to highly efficient and powerful motor drive capacity the MC54113 ICs provide several important amplifier and DC voltage related safety features including over voltage, under voltage, overcurrent, over temperature, and I2T control for precise control of heating in the actuator and motor being driven.
Figure 11: Step Motor Amplification Connections
Motion Trace Capture
Motion trace in the MC54113 IC allows simultaneous continuous capture of up to four user-selectable variables. The capture interval is programmable and can be up to 20,000 samples per second.
There are more than 50 user-selectable traceable variables, some of which are listed here:
- Status registers
- Encoder position, velocity
- Signals status (limit switches, Index, AxisIn, AxisOut, etc…)
- Commanded (instantaneous desired) position, velocity & acceleration
- Actual motor current in each coil
- DC Bus voltage
- Amplifier temperature
- i2t energy
The MC54113’s internal trace buffer size is 32 Kbytes.
A vital feature associated with motion trace is specifying the method by which the trace can be started or stopped. Here is a list of supported trace control settings:
- Time-based (start/stop trace at specified time)
- External signal (start/stop trace based on transition of external system signal)
- Profile position (start/stop when a programmed position is reached)
- Profile velocity (start/stop when a programmed velocity value is reached)
- Profile acceleration (start/stop when a programmed acceleration value is reached)
- Profile status (start/stop when specific states of the trajectory generator are achieved such as axis in motion, maximum velocity reached, motion complete, axis settled, etc…)
- Anomalous conditions (start/stop when a specified anomaly occurs such as stall detection, overtemperature, undervoltage, etc...)
Tracing with the MC54113 IC, retrieving the data, and displaying the data usually occurs via PMD’s Pro-Motion software package. Pro-Motion is provided with all PMD product developer kits. The screen image below shows an example of the Pro-Motion’s scope/trace window.
Figure 12: Pro-Motion’s Scope / Trace Window
Appendix I - Configurations, Parameters, and Performance
Profile modes
|
S-curve point-to-point
|
Position, velocity, acceleration, deceleration, jerk
|
|
Trapezoidal point-to-point
|
Position, velocity, acceleration, deceleration
|
|
Velocity-contouring
|
Velocity, acceleration, and deceleration parameters
|
|
Electronic gear
|
Encoder input, pulse & direction input, or trajectory position of one axis used to drive a second axis. Master and slave axes and gear ratio parameters
|
Current control modes
|
A/B
|
Digital loop provides active current control utilizing leg current analog input
|
|
Current loop off
|
Voltage mode control, no current feedback used
|
Communication modes
|
SPI (Serial Peripheral Interface) with 16-bit command word size
|
|
|
Point to point asynchronous serial
|
|
|
Multi-drop asynchronous serial
|
|
|
CAN bus 2.0B
|
|
Host SPI frequency range
|
1.0 MHz - 10.0 MHz
|
|
Serial port baud rate range
|
1,200 baud to 460,800 baud (1,200, 2,400, 9,600, 19,200, 57,600, 115,200, 230,400, 460,800)
|
|
CAN port transmission rate range
|
10,000 baud to 1,000,000 baud (10,000, 20,000, 50,000, 125,000, 250,000, 500,000, 800,000, 1,000,000)
|
|
Position range
|
-2,147,483,648 to +2,147,483,647 counts or steps
|
|
Velocity range |
-32,768 to +32,767 counts or steps per cycle with a resolution of 1/65,536 counts or steps per cycle
|
|
Acceleration and deceleration ranges
|
0 to +32,767 counts or steps per cycle2 with a resolution of 1/65,536 counts or steps per cycle2
|
|
Jerk range
|
0 to ½ counts or steps per cycle3 with a resolution of 1/4,294,967,296 counts or steps per cycle3
|
|
Electronic gear ratio range
|
-32,768 to +32,767 with a resolution of 1/65,536 (negative and positive direction)
|
|
Position error
|
32 bits
|
|
Position error tracking
|
Stall window
|
Allows stepper motor to be stopped upon exceeding programmable window
|
Motor output modes
|
PWM
|
20 kHz, 40 kHz, 80 kHz
|
|
Pulse and direction
|
1.0 Mpulses/sec maximum
|
|
SPI Atlas
|
Four-signal SPI interface with 16-bit packet commands and SPI Atlas protocol
|
Current loop rate
|
19.53 kHz
|
|
Current measurement resolution
|
12 bits
|
|
PWM resolution
|
1:2,048 @ 20 kHz 1:1,024 @ 40 kHz 1:512 @ 80 kHz
|
|
Current loop type
|
P, I (proportional integral) with integral limit
|
|
Current loop resolution
|
16 bits
|
|
Drive safety functions
|
Over current detect, over temperature detect, over voltage detect, under voltage detect, i2t current foldback
|
|
Output limiting
|
Energy, current, and voltage limit
|
|
NVRAM storage size
|
1,024 16-bit words
|
|
Microstepping waveform
|
HostCAN (CAN/SPI host interface unit Sinusoidal)
|
|
Microsteps per full step
|
1 to 256
|
|
Maximum encoder input rate
|
25 Mcounts/sec
|
|
Cycle time range
|
51.2 microseconds to 1.048576 seconds
|
|
Multi-chip synchronization
|
<1 μSec difference between master and slave servo cycle
|
|
Limit switches
|
1 for each direction of trave
|
|
Position-capture triggers
|
Index and Home signals
|
|
Other digital signals
|
1 AxisIn signal, 1 AxisOut signal
|
|
Software-invertible signals
|
Quad A, Quad B, Index, Home, AxisIn, AxisOut, PositiveLimit, NegativeLimit, HallA, HallB, HallC (all individually programmable), Pulse, Direction
|
|
General purpose analog input
|
1 12-bit analog input
|
|
RAM internal memory
|
16,380 words
|
|
Maximum number of simultaneous trace variables
|
4
|
Appendix II - Physical Characteristics and Mounting Dimensions
Figure 13: Physical Characteristics and Mounting Dimensions
Appendix III - Pinouts
Figure 14: MC54113 Pinouts
Additional Resources
- Magellan MC58113 Series Motion Control ICs
- MC58113 Electrical Specification (PDF)
- DK58420 Developer Kits
- PMD Resource Center