It may seem bizarre but in the high precision world of motion control engineering the way numbers are calculated in Primary school maths is inherently more accurate than digital processor calculations. Digital processing is not good at calculating real world numbers. As binary systems work in 0 and 1 representing some partial numbers or fractions is a problem. One third, one seventh, one eleventh are typical examples. Floating numbers were introduced to represent partial quantities but still only approximate many of them.

The way division is taught in today’s Primary maths classes demonstrates the solution. There ten divided by three will be expressed as three remainder one. It is a world of whole or integer number maths. In motion control terms these remainders have to be handled. In the case of moving 10 units in three moves the options are either to scale to a point where it is within an acceptable tolerance or, more elegantly, work on the basis that every move of 3 throws a remainder 1 so the 3rd  move uses up the sum of the previous two remainders and it’s own and in fact moves 4 units. The final move sequence being 3, 3, and 4. Giving a total of 10.

An example of this comes from a packaging machine project I worked on for a major global confectionery brand. 150mm chocolate bars were being packaged on a machine to handle 1000’s a minute so calculations that were out by a few microns would very quickly add up to unacceptable drift in position. In this case I knew the pitch of the conveyor, the gearbox ratio and the encoder resolution and was able to work out that every 121 bars an adjust needed to be made to correct the rounding error. I made the change and the position drift disappeared. It is like finding the ‘Magic Number’

   
© 2012 Tim Oxtoby Ltd / Terms and Conditions