Help

Problem with 20-bits encoder

I have always the same problem when i use 20 bits encoders with codesys 3.5 SP9 Patch 5. Softmotion 4.1.1.0 .

As usual, in the Axis Scale/Mapping, I enter 1048576 (=2^20) increments and 360 in units in application.

The MC_Power sets the motor in standstill only within a very narrow range of positions. I can spin the motor only within this limited range. If i set as target position a position out of this range, the motor loses its torque and does not spin at all. It looks to me that some sort of max limits exceeded occurs even if all limits are disabled. Maybe any overflows occurs ????

I tried with both 16bits encoders and 10 000 increments ones with no problems.

Up to now my workaround to use 20 bits encoders is to set 2^14 bits in the edit box increments in the Scale/Mapping tab. I then compute by hand via SW the actual position and velocity of the motor axis.

Is this a known BUG or an unknown one or simply i'm doing something wrong?

Thanks.

If you would like to refer to this comment somewhere else in this project, copy and paste the following link:

I do need to send to the drive a Torque Trajectory using the Mode Of Operation 10 (Cyclic synchronous torque mode). Each step (4ms) i generate a Torque value [in Nm]. Which of the MC or SMC blocks could i use for this purpose? Can i set directly the variable Axis.setTorque ?

Thanks.

If you would like to refer to this comment somewhere else in this project, copy and paste the following link:

CODESYS Group | We software Automation.
The CODESYS Group is the manufacturer of CODESYS, the leading hardware-independent IEC 61131-3 automation software for developing and engineering controller applications.
3S-Smart Software Solutions GmbH
A member of the CODESYS Group
Memminger Straße 151, 87439 Kempten
Germany
Tel.: +49-831-54031-0
info@codesys.com