Flux focusing enables the motor to produce a high level of flux density from a low-energy magnet.

Permanent magnet synchronous servomotors are used in many types of industrial equipment, including machine tools, robots, injection molding machines, printing presses and packaging machines. These compact motors have a high air-gap flux density, high power density, high torque-to-inertia ratio and high torque capability.

Compared with induction servomotors, permanent magnet synchronous servomotors are more efficient, due to the absence of rotor losses and lower no-load current below the rated speed.

Compared with DC brush motors, permanent magnet synchronous servomotors are easier to keep cool. Because the permanent magnetic field is generated by the rotor instead of the stator, there is no current flow to generate heat in the rotor. Instead, heat is generated in the stator windings, which are close to the surface of the motor. In many applications, the motors are cooled simply through natural convection. In more demanding applications, an external blower will provide enough cooling. Because no internal ventilation is required, the motors can be built to meet high levels of environmental protection.

Permanent magnet synchronous servomotors are constructed in two main configurations: internal and external. In both, the windings are in the stator, while the rotor consists of permanent magnets and thin steel laminations clamped together to form a cylinder.

With an internal permanent magnet motor, the magnets are located inside the lamination stack. Because the lamination stack covers the magnets, these motors are also known as buried magnet motors. With the external permanent magnet synchronous servomotor, the magnets are bonded to the exterior of the lamination stack. Thus, the motors are known as surface-mount permanent magnet motors.

"Both designs are valid," says Kevin Liu, product specialist with Danaher Motion (Radford, VA). "Both have advantages and disadvantages."

A key advantage of the internal permanent magnet motor is the ability to focus the flux through the controller. "With an internal permanent magnet motor, you're able to channel the flux more directly," explains Liu. "With the surface-mount motor, the flux just goes across the air gap."

Flux focusing enables the motor to produce a high level of flux density from a low-energy-and therefore less expensive-magnet. "As far as performance goes, it's not a huge benefit, because there are other limitations," says Liu. "You can only channel the flux so much, and then you run into saturation of the materials and stator teeth. There is a point of diminishing return on increasing flux density."

Another advantage of the internal permanent magnet design is a phenomenon known as field-weakening. "That let's you misalign the commutation angle," says Liu. "You can really offset it, so that you're applying some of the coil flux in the opposite direction to the permanent magnet. That lets you get a little more speed out of the motor. As long as the controller can support that, it's not uncommon for the motor to achieve operational speeds that are beyond the base speed or no-load speed."

Surface-mount permanent magnet motors can achieve comparable performance to internal permanent magnet motors. However, their biggest advantage is that they don't need complicated control schemes and firmware for the drive. These motors can often be controlled with legacy drives and controllers, so engineers may not need to replace the control system when replacing an existing motor with a permanent magnet synchronous servomotor.

"Another benefit of the surface-mount design is that the inductance changes less than with an internal permanent magnet motor," says Liu. "That means the current loop scheme inside the drive doesn't need to be quite as complex. With an internal permanent magnet motor, you have to control the current path very closely, which adds complexity to your commutation loop. The inductance changes are much greater on an internal permanent magnet motor, and you need to account for those inside your current loop."