Motor torque cogging & uniformity compensation

Development today focused on improving torque smoothness of motors. Some motors, especially cheaper ones and stepping motors, suffer from cogging torque:

Cogging torque of electrical motors is the torque due to the interaction between the permanent magnets of the rotor and the stator slots of a Permanent Magnet (PM) machine. It is also known as detent or ‘no-current’ torque. This torque is position dependent and its periodicity per revolution depends on the number of magnetic poles and the number of teeth on the stator.”

This can be compensated by modulating motor current to counter the motor cogging. The firmware under development adds options to adjust compensation current by few new parameters.

Perfecting motor with cogging and uniformity compensations

Perfecting motor with cogging and uniformity compensations

In addition to cogging torque, the new feature allows compensating also nonuniformity of torque production. I.e. if motor torque setpoint is kept constant and motor is being turned, it may produce variable amount of torque due to same reasons than cogging. Nonuniformity compensation will modulate the torque setpoint by a selected sine or cosine function and amplitude.

The new feature beta will become available for IONI Pro in the soon upcoming FW release. We hope that this will bring cost of any motor control system down as cheaper motor could achieve nearly same smoothness as expensive ones.

The name is IONI Pro HC

Thousands thanks for contributing premium name suggestions! After a lot of consideration we chose to go with IONI Pro HC ending after drive model because:

  • HC extension indicates about something additional to original model. We didn’t want to remove “Pro” from the name to avoid confusion.
  • Short and simple
  • Works also with non-pro version (IONI HC)
  • Logical and extensible, maybe we add IONI Pro HV (high voltage) someday

Oddly, Pro HC ending never crossed my mind, I was just thinking HC Pro which I didn’t like that much. Pro HC was suggested by Thomas in Facebook comments. Congratulations for your very first serial numbered IONI Pro HC drive!

We’ll keep the other names in reserve for possible future use. If your contribution is picked later, you will be rewarded for sure.

High current IONIs arrived!

We’ve got our hands on the pilot run high current IONIs yesterday! Everything is working as expected which makes development straightforward.

Today I spent full day adapting the drive firmware, bootloader firmware and testing application to support the new hardware. It took some time to create a system where the one and only firmware runs on both hardware models. Firmware detects the underlying hardware model and automatically adjusts it’s operation accordingly.


Thank you for all the great name proposals! We are having difficult time choosing one among so many good options. The winner will be announced soon :)

High current IONI model in production

We will be soon receiving a pilot batch of the new enhanced IONI model with the best-in-class power MOSFET transistors to increase the current capacity. Other change is an increase of voltage sense range, which will allow few volts more usable voltage range.

We’re thinking the naming of it. I thinki IONI HC Pro would sound clumsy. Perhaps something like IONI XPro would suit better. What do you think? Or perhaps give an idea in comments. If your suggestion is chosen, you will win a free high current IONI with the very first serial number!


Update: we will arrange a poll within our staff to pick the winner! All entries before Monday 12 October will make it to the voting. Keep the ideas coming!

Experimenting with high current IONI

We have started tweaking the IONI drive in order to push it beyond it’s present output current limits. This includes testing of lower loss power MOSFETs and current sensing resistors to achieve reduced heat dissipation. So far we have achieved 35-40% reduction of heat dissipation at high currents.

MOSFET replacement under way. The new ones are installed on right side. These particular transistors have exposed top side thermal pad for heat sinking.

MOSFET replacement work in progress. The new ones are already installed on right side. These particular transistors have exposed top side thermal pad for external heat sinking.

BL series servo motors are back

Due to popular demand, we brought BL series servo motors back in stock!

They have little bit different specifications than the earlier BL series motors. Now these motors are rated between 24 and 48 VDC which makes them ideal match with IONI drives. Also BL70 series motors have been upgraded from 4 000 CPR to 10 000 CPR encoders for smoother and stiffer operation.

Servo motor selection

Servo motor selection

IONICUBE 1X now available

The awaited IONICUBE 1X has been now released and available through the web shop! Also documentation is online in the Wiki.

IONICUBE 1X

IONICUBE 1X

On-board features include:

  • Carry single IONI drive
  • On-board regenerative braking resistor drive (need just an external resistor)
  • Support mechanical end-of-travel switches and homing switch
  • Motor holding brake output with driver
  • 20 pin ribbon cable connector for I/O and setpoint signals
  • Support 3.3V, 5V and 24V1 I/O signal levels
  • Charge pump enable input for safety
  • E-stop switch input (safe torque off)
  • ARGON Servo Drive and IONICUBE (4 axis) compatible encoder connector pin-out
  • RJ45 connectors for SimpleMotion V2 usage and configuration
  • On-board 0.5A 5V regulator to power drive logic and feedback devices
  • DIN rail mounting option

SinCos encoder support in IONI Pro

The new IONI firmware version has been released! It adds long awaited SinCos encoder support to the drive.

See the video below as comparison of SinCos and incremental encoder. The main advantages of SinCos are: silent (no dither), more stiffness and more precision. The only drawbacks are the availability and price of such encoders.

The other added features include application specific functionality for torque mode. This includes rotation limit (added safety) and torque setpoint scaling by analog input. These may be useful especially for OpenSimWheel project builders.

SinCos encoder support

Last days we have been working on supporting SinCos encoders. SinCos encoder is exactly like standard incremental encoder, except it has sinusoidal analog outputs instead of digital quadrature waveforms.

SinCos encoder signals vs digital incremental encoder signals

SinCos encoder signals vs digital incremental encoder signals

The beauty of this is that the analog waveform can provide infinite position resolution when the phase angle of signals are calculated. The latest prototype firmware of IONI Pro now supports SinCos interpolation which increases the resolution that we would get from digital counting by the factor of 16, 64 or 256 times. I.e. a 1000 pulse (or cycle) per revolution analog encoder with 256X interpolation yields resolution equal to 256 000 quadrature pulses per revolution (PPR) or 1 024 000 counts/per revolution (actual position resolution of motor).

SinCos encoder interpolation: the first graph shows position counter in digital mode, the middle shows interpolated angle from sine and cosine signals and the last image shows the combination of these two.

SinCos encoder interpolation: the first graph shows position counter in digital mode, the middle shows interpolated angle from sine and cosine signals and the last image shows the combination of these two to form the high resolution position count.

Very high resolution helps especially to make motion smoother, quieter and stiffer. The initial tests show amazing smooth performance of the motor in velocity and position modes. There was no dithering or groaning noise from the motor and at same time the motor position holding stiffness was jaw dropping. It felt like the motor was physically jammed as the eye, hand or ear can’t notice any movement.