OperationalModes

From SoftMC-Wiki
Revision as of 12:52, 21 December 2011 by Miborich (talk | contribs) (Stopping)
Jump to: navigation, search

Axystems:Template:Temporary-Specification

Enabling user working in different operation modes of the drive

User selects the operation-mode using the OpMode command.

<axis>.OpMode = {POSITIONMODE|VELOCITYMODE|TORQUEMODE} 


Command will change the drive (and axis!) opmode to the given value using the opmode bits of the SERCOS drive status word.

  • Default state is POSITIONMODE (as today). All the standard deviation thresholds are checked: pe < pemax,vfb < vospd, te < terrmax, acmd < amax and tcmd < tmax.
  • In VELOCITYMODE axis will NOT check position-error, but will check: vfb < vospd, te < terrmax, acmd < amax and tcmd < tmax.
  • In TORQUEMODE axis will NOT check position-error or acceleration max, but will check: vfb < vospd, te < terrmax and tcmd < tmax.

Torque Interpolation

New torque interpolation command will be implemented:

TORQUE <axis>  tfinal

This command interpolate the tcmd from its initial value to the given tfinal according to the profile parameters defined.

Stopping

  • STOP command in TORQUEMODE mode will forcibly switch drive opmode to VELOCTYMODE producing the deceleration profile from the current VFB value t zero. The same behavior will be implemend for both user-entred stop command and the system-generated stop commands like: velocity-over speed error, tcmd > tmax, te>temax.
  • New command HOLD <Axis> will cause axis to stop interpolating torque. New property <axis>.HoldType will give the user option to select between keeping the stopped TCMD value or reducing it to zero. In bot cases the original TORQUEMODE will be not changed.
HOLD <axis> {HoldType = <value>}


Mode:
Stop
Hold
Position
Regular
calls STOP

HoldType value ignored!
Velocity
Regular
calls STOP

HoldType value ignored!
Torque first switches into velocityMode with vcmd = vfb
then executes motion profile from the vcmd to 0 according the given StopType
HoldTyepe = 0 immediately(no profile) brakes TORQUE command and sets TCMD = 0
HoldTyepe = 1 immediately(no profile) brakes TORQUE command and keeps tha last value of TCMD

Limitations and side effects

NOTE-Info.svgNOTE
Opmode changes are allowed in disabled drive state only.
NOTE-Info.svgNOTE
If an axis belongs to a group it's opmode can not be changed separately.This means:
  1. opmode change is not allowed if an axis belongs to an attached group
  2. a group can not be attached (implicitly or explicitly) if it consist of axes with different opmodes.
NOTE-Info.svgNOTE
MOVE <axis> and JOG <axis> commands are producing PCMD,VCMDand TADDCMD (if DynamicModel is turned on). The TCMD value during these types of motion remains unchanged.
NOTE-Info.svgNOTE
TORQUE <axis> command is affecting PCMD, VCMD, TADDCMD values of the axis (their values are kept unchanged).Only the TCMD is interpolated.
NOTE-Info.svgNOTE
We assume dirves adds the TCMD(IDN80) and TADDCMD(IDN81) in all OPMODEs. In case it is not so <axis>.SumTorque=1 will cause the value of TADDCMD to be added to TCMD:

TCMD = TCMD + TADDCMD

NOTE-Info.svgNOTE
TORQUEMODE of an axis is not influencing camming/gearing operation.

The interpolated torque values of a master axis will be NOT transferred to slave axes.

Slave that is in TORQUEMODE continues to be slaved affecting only its PCMD and VCMD values.

See also:

Issue 5564Bugzilla icon.png