SPRUHJ1I January 2013 – October 2021 TMS320F2802-Q1 , TMS320F28026-Q1 , TMS320F28026F , TMS320F28027-Q1 , TMS320F28027F , TMS320F28027F-Q1 , TMS320F28052-Q1 , TMS320F28052F , TMS320F28052F-Q1 , TMS320F28052M , TMS320F28052M-Q1 , TMS320F28054-Q1 , TMS320F28054F , TMS320F28054F-Q1 , TMS320F28054M , TMS320F28054M-Q1 , TMS320F2806-Q1 , TMS320F28062-Q1 , TMS320F28062F , TMS320F28062F-Q1 , TMS320F28068F , TMS320F28068M , TMS320F28069-Q1 , TMS320F28069F , TMS320F28069F-Q1 , TMS320F28069M , TMS320F28069M-Q1
The interfaces and functions of SpinTAC Position Move are shown in Figure 4-17.
Table 4-18 lists the interface parameters for SpinTAC Position Move.
Signal Type | Structure Member Name | Data Type | Description | Value Range | Unit |
---|---|---|---|---|---|
Config | cfg.Axis | ST_Axis_e | SpinTAC Move Axis ID | {ST_AXIS0, ST_AXIS1} | |
cfg.ProfileType | ST_PosMove Profiletype_e |
Profile mode (velocity-controlled or position-controlled) | {ST_POS_MOVE_VEL_ TYPE, ST_POS_MOVE_POS_ TYPE} |
||
cfg.CurveType | ST_MoveCurve Type_e |
Curve type | {ST_MOVE_CUR_TRAP, ST_MOVE_CUR_SCRV, ST_MOVE_CUR_STCRV} | ||
cfg.T_sec | _iq24 | Sampling time | (0 , 0.01] | s | |
cfg.ROMax_mrev | _iq24 | Position rollover bound | [2, 100] | MRev | |
cfg.mrev_TO_pu | _iq24 | Conversion ratio from mechanical revolution to pu | [0.002, 1] | Pu / MRev | |
cfg.VelMax | _iq24 | Maximum velocity of the system | (0 , 1] | pu / s | |
cfg.AccMax | _iq24 | Maximum acceleration of the system | [0.001 , 120] | pu / s2 | |
cfg.DecMax | _iq24 | Maximum deceleration of the system | [0.001 , 120] | pu / s2 | |
cfg.JrkMax | _iq20 | Maximum jerk of the system | [0.0005, 2000] | pu / s3 | |
cfg.VelStart | _iq24 | Velocity start value | [-cfg.VelMax , cfg.VelMax] | pu / s | |
cfg.PosStart_mrev | _iq24 | Position start value | [-cfg.ROMax, cfg.ROMax] | MRev | |
cfg.IgnoreLimitErrors | bool | If a profile bound is set outside the valid value range, this will saturate the profile limit to within the valid value range | false: provide an error code and do not generate a profile; true: saturate profile limit and generate a profile | ||
Message | msg.ProTime_tick | uint32_t | Profile time within 1 million counts | Sample Counts | |
msg.ProTime_mtick | uint32_t | Profile time million counts | Million Sample Counts | ||
msg.Vel | _iq24 | Maximum velocity of the profile | pu / s | ||
msg.Acc | _iq24 | Maximum acceleration of the profile | pu / s2 | ||
msg.Dec | _iq24 | Maximum deceleration of the profile | pu / s2 | ||
msg.Jrk | _iq20 | Maximum jerk of the profile | pu / s3 | ||
msg.PosStepMax_mrev | _iq24 | Maximum position step | MRev | ||
Inputs | PosStepInt_mrev | int32_t | Position step integer value | [-2147483647, 2147483647] | MRev |
PosStepFrac_mrev | _iq24 | Position step fraction value | (-1, 1) | MRev | |
VelLim | _iq24 | Velocity limit | (0, cfg.VelMax] | pu / s | |
AccLim | _iq24 | Acceleration limit | [0.001 , cfg.AccMax] | pu / s2 | |
DecLim | _iq24 | Deceleration limit | [0.001 , cfg.DecMax] | pu / s2 | |
JrkLim | _iq20 | Jerk limit | [0.0005, cfg.JrkMax] | pu / s3 | |
VelEnd | _iq24 | Velocity end value | [-cfg.VelMax , cfg.VelMax] | pu / s | |
Control | ENB | bool | Enable bit | false: profile done or disabled; true: enable and run | |
RES | bool | Reset bit | false: not reset; true: reset ERR_ID, and hold profile outputs as previous values | ||
TST | bool | Profile configuration test bit | false: not test; true: test profile configuration | ||
Info | STATUS | ST_MoveStatus_e | Status information | {ST_MOVE_IDLE, ST_MOVE_INIT, ST_MOVE_CONF, ST_MOVE_BUSY, ST_MOVE_HALT} | |
DON | bool | Profile done indicator | false: running; true: profile done or idle | ||
ERR_ID | uint16_t | Error code | See Table 14-2 | ||
Outputs | PosRollOver | int32_t | Position rollover counts | ||
PosRef_mrev | _iq24 | Position reference | MRev | ||
VelRef | _iq24 | Velocity reference | pu / s | ||
AccRef | _iq24 | Acceleration reference | pu / s2 | ||
JrkRef | _iq20 | Jerk reference | pu / s3 |