Skip to content

genesys: Fix calculations of scan head acceleration tables

This large PR refactors the calculation of motor acceleration tables and fixes a number of issues identified in the process.

Previously the motor acceleration was handled in two ways. Roughly half of the scanner models used hardcoded acceleration tables which was completely inflexible. The other half were modelled as if the scan head movement was a purely mathematical concept and thus ignored real physical constraints such as maximum motor acceleration. It is likely that the scanner constraints were honored, but this was purely by chance. The formula was to take linear acceleration curve and just apply a power factor to it.

The new code uses physical approach which makes it much more flexible. The maximum acceleration and the maximum speed of the head is defined and the calculation of the acceleration function is such that both of these constraints are honored at all times.

Merge request reports