In other words, we’re now hiring the best of the best hacker available to take a major role in servo drive firmware development. If your socks started spinning already, don’t miss this once-in-a-lifetime chance and drop Granite Devices your CV now!
Something cool is under development relating to BLDC (brushless DC) motors. BLDC is similar technology to sinusoidal AC motors but with trapezoidal voltage waveform. This makes BLDC little bit smaller and usually cheaper than AC motor.
Finding optimum commutation angle makes it possible to implement MTPA (maximum torque per amp) drive algorithm for such engines. Such efficiency boost might be very beneficial especially in battery powered applications such as multicopters, but of course it also will benefit squeezing more out of the existing motors. More about that later!
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.
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 Argon firmware release 2.0 beta version together with Granity 1.8 preview is now available for public testing!
For complete list of changes and downloads, see this page. We’re reading every feedback, so please send some of your thoughts in comments here, or by email :-)
Granity configuration software has been successfully compiled on LinuxCNC distribution and works without any issues (except the default screen resolution being quite low :). The plan is to include pre-compiled Granity for Linux in the future releases.
In other news, Granity 1.8 is coming soon with Argon support. Same time the Argon firmware version 2.0 will be introduced.
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.
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).
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.
IONI drive firmware release 1.1.0 brings a new useful feature that automatically measures motor characteristic resistance and inductance and completely takes the guesswork out of torque controller tuning.
Using automatic measure is the new recommended approach to set MR and ML parameters accurately even when motor data sheet would provide these values. This is because many data sheets unfortunately provide inaccurate values. Some manufacturers have apparently characterized motor inductance at high frequency range (hundreds of kHz) which typically gives a value more than 50% off from the real inductance.
Having accurate values also opens doors for sophisticated stepping motor control features such as advanced vibration damping which rely on accurate motor characteristics. This is a subject for another update!
The Pareto’s principle has been shown true once again. It says that 80% of work comes from 20% of remaining things. The last two weeks have been so busy finishing & perfecting IONI that I had barely time to eat properly or check emails. Luckily 2 weeks ago we were not at 80% but 99% so that 2 weeks was enough to fill the missing 1%. This reminded me why I don’t like to promise any fixed dates but rather say “when it’s ready”.
Today finally the firmware and testing rig has been finalized and frozen. First set of devices are now tested and the shippings begin on Friday. Next up: the user guide :)
While we develop IONI, we are also developing Granity setup software. Yesterday’s little innovation was to add visual aids for displaying the reason why drive is not in active state.
We have started development of Mach4 motion control plugin that supports SimpleMotion V2 bus. This means that ARGON and IONI drives can be controlled by Mach4 without any extra hardware. It just needs the SMV2 USB adapter and drives. The plan is also to allow control of few I/O signals through that plugin.
The plugin will be fully open source and available on GitHub if Artsoft sample plugin code license allows that (will be determined later).
Granite Devices will be on Christmas holiday for the next week. I wish merry Christmas to everyone following this blog! :)