以下部分对控制工具箱中的功能块进行概要描述。
大多数功能块的运行模式可通过该输入进行选择,从而支持以下运行模式:
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
eCTRL_MODE_IDLE | INT | 0 | 空闲模式 |
eCTRL_MODE_PASSIVE | INT | 1 | 被动模式 |
eCTRL_MODE_ACTIVE | INT | 2 | 主动模式 |
eCTRL_MODE_RESET | INT | 3 | 复位模式 |
eCTRL_MODE_MANUAL | INT | 4 | 手动模式 |
eCTRL_MODE_TUNE | INT | 5 | 调试模式 |
eCTRL_MODE_SELFTEST | INT | 6 | 自检模式 |
eCTRL_MODE_SYNC_MOVEMENT | INT | 7 | 同步运动模式 |
eCTRL_MODE_FREEZE | INT | 8 | 冻结模式 |
必要的参数通过此结构传递到功能块。所有参数结构中都包含变量 tTaskCycleTime 和 tCtrlCycleTime,它们的作用如下:
参数 tTaskCycleTime 指定功能块的调用周期。如果功能块在每个周期调用,则该值等于调用任务的周期时间;如果每隔一个周期调用一次,则该值应相应加倍。
参数 tCtrlCycleTime 指定控制回路的采样时间,该值必须大于或等于 tTaskCycleTime。如果tCtrlCycleTime 等于 tTaskCycleTime,则功能块在每次调用时执行。如果 tCtrlCycleTime 设定为 tTaskCycleTime 的 5 倍,则功能块仅在每 5 次调用中执行一次。这样可以在快速任务中实现慢速控制回路。
参数 tTaskCycleTime 和 tCtrlCycleTime 的数据类型为 TIME,因此不允许输入小于 1ms 的值。
为了在周期时间小于 1ms 的高速 PLC 任务中使用控制器,可以指定一个全局基准时间作为周期时间的参考。基准时间的使用将在以下示例中说明。
假设功能块在每个任务周期中都被调用。
Task: Configuration | tTaskCycleTime | tCtrlCycleTime | Action |
---|---|---|---|
T#10ms | T#10ms | T#10ms | 控制回路以 10ms 的采样时间进行处理 |
T#10ms | T#10ms | T#50ms | 控制回路以 50ms 的采样时间进行处理 |
T#100ms | T#100ms | T#100ms | 控制回路以 100ms 的采样时间进行处理 |
T#100ms | T#100ms | T#50ms | 错误,无法执行! |
T#100ms | T#50ms | T#50ms | 错误,功能块已执行,但计算出的输出值不正确! |
此输出指示功能块的当前内部状态
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
eCTRL_MODE_IDLE | INT | 0 | 空闲状态 |
eCTRL_MODE_PASSIVE | INT | 1 | 被动状态 |
eCTRL_MODE_ACTIVE | INT | 2 | 主动状态 |
eCTRL_MODE_RESET | INT | 3 | 复位状态 |
eCTRL_MODE_MANUAL | INT | 4 | 手动状态 |
eCTRL_MODE_TUNING | INT | 5 | 正在调试 |
eCTRL_MODE_TUNED | INT | 6 | 调试完成 |
eCTRL_MODE_SELFTEST | INT | 7 | 自检状态 |
eCTRL_MODE_ERROR | INT | 8 | 错误状态 |
eCTRL_MODE_SYNC_MOVEMENT | INT | 9 | 同步运动状态 |
eCTRL_MODE_FREEZE | INT | 10 | 冻结状态 |
该布尔输出的TRUE,指示功能块中出现错误。
bError输出值为TRUE时,此处输出错误码。
控制器功能块 FB_3Point 具有多个输入和输出,具体描述如下。所有控制器的参数均通过结构体传递给功能块。
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fSetpointValue | LREAL | |
fActualValue | LREAL | |
nManSyncValue | INT | |
bSync | BOOL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_3PointParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
bPosOut | BOOL | |
bNegOut | BOOL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_3PointParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fPosOutOn | LREAL | ||
fPosOutOff | LREAL | ||
fNegOutOn | LREAL | ||
fNegOutOff | LREAL |
控制器功能块 FB_3PointExt 具有多个输入和输出,具体描述如下。所有控制器的参数均通过结构体传递给功能块。
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fSetpointValue | LREAL | |
fActualValue | LREAL | |
fManSyncValue | LREAL | |
bSync | BOOL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_3PointExtParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_3PointExtParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fOutOff | LREAL | ||
fOutOn | LREAL | ||
fGain | LREAL | ||
fOffset | LREAL |
控制器功能块 FB_P 具有多个输入和输出,具体描述如下。所有控制器的参数均通过结构体传递给功能块。
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fKp | LREAL |
控制器功能块 FB_PI 具有多个输入和输出,具体描述如下。所有控制器的参数均通过结构体传递给功能块。
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fSetpointValue | LREAL | 设定值 |
fActualValue | LREAL | 实际值 |
fManSyncValue | LREAL | 手动模式或同步模式下的输出值 |
bSync | BOOL | 上升沿设置输出为nManSyncValue |
eMode | E_CtrlMode | 控制模式 |
bHold | BOOL | 积分保持 |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PIParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | 控制输出 |
bARWactive | BOOL | fOut 达到限制值 |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PIParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
tTn | TIME | ||
fKp | REAL | ||
fOutMaxLimit | LREAL | ||
fOutMinLimit | LREAL | ||
bARWOnIPartOnly | BOOL |
控制器功能块 FB_PID 具有多个输入和输出,具体描述如下。所有控制器的参数均通过结构体传递给功能块。
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fSetpointValue | LREAL | 设定值 |
fActualValue | LREAL | 实际值 |
fManSyncValue | LREAL | 手动模式或同步模式下的输出值 |
bSync | BOOL | 上升沿设置输出为nManSyncValue |
eMode | E_CtrlMode | 控制模式 |
bHold | BOOL | 积分保持 |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PIDParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | 控制输出 |
bARWactive | BOOL | fOut 达到限制值 |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PIDParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fKp | LREAL | ||
tTn | TIME | ||
tTv | TIME | ||
tTd | TIME | ||
fOutMaxLimit | LREAL | ||
fOutMinLimit | LREAL | ||
bPInTheFeedbackPath | BOOL | ||
bDInTheFeedbackPath | BOOL | ||
bARWOnIPartOnly | BOOL |
控制器功能块 FB_PIDSplitRange 具有多个输入和输出,具体描述如下。所有控制器的参数均通过结构体传递给功能块。
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fSetpointValue | LREAL | 设定值 |
fActualValue | LREAL | 实际值 |
eParameterRecord | E_CtrlParameterRecord | |
fManSyncValue | LREAL | 手动模式或同步模式下的输出值 |
bSync | BOOL | 上升沿设置输出为nManSyncValue |
eMode | E_CtrlMode | 控制模式 |
bHold | BOOL | 积分保持 |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PIDSplitRangeParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOutPos | LREAL | |
fOutNeg | LREAL | |
fOut | LREAL | 控制输出 |
bARWactive | BOOL | fOut 达到限制值 |
bParameterChangeActive | BOOL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PIDSplitRangeParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fKp_heating | LREAL | 0 | |
tTn_heating | TIME | TIME#0ms | |
tTv_heating | TIME | TIME#0ms | |
tTd_heating | TIME | TIME#0ms | |
fKp_cooling | LREAL | 0 | |
tTn_cooling | TIME | TIME#0ms | |
tTv_cooling | TIME | TIME#0ms | |
tTd_cooling | TIME | TIME#0ms | |
nParameterChangeCycleTicks | UDINT | ||
fOutMaxLimit | LREAL | 1E+38 | |
fOutMinLimit | LREAL | -1E+38 | |
bPInTheFeedbackPath | BOOL | FALSE | |
bDInTheFeedbackPath | BOOL | FALSE | |
bARWOnIPartOnly | BOOL | FALSE |
控制器功能块 FB_PIDExtSplitRange 具有多个输入和输出,具体描述如下。所有控制器的参数均通过结构体传递给功能块。
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fSetpointValue | LREAL | 设定值 |
fActualValue | LREAL | 实际值 |
eParameterRecord | E_CtrlParameterRecord | |
fManSyncValue | LREAL | 手动模式或同步模式下的输出值 |
bSync | BOOL | 上升沿设置输出为nManSyncValue |
eMode | E_CtrlMode | 控制模式 |
bHold | BOOL | 积分保持 |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PIDExtSplitRangeParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOutPos | LREAL | |
fOutNeg | LREAL | |
fOut | LREAL | 控制输出 |
fOut_WithoutDeadband | LREAL | 无死区限制控制值 |
bARWactive | BOOL | fOut 达到限制值 |
bParameterChangeActive | BOOL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PIDEXTSplitRangeParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fKp_heating | LREAL | 0 | |
tTn_heating | TIME | TIME#0ms | |
tTv_heating | TIME | TIME#0ms | |
tTd_heating | TIME | TIME#0ms | |
fKp_cooling | LREAL | 0 | |
tTn_cooling | TIME | TIME#0ms | |
tTv_cooling | TIME | TIME#0ms | |
tTd_cooling | TIME | TIME#0ms | |
nParameterChangeCycleTicks | UDINT | ||
fDeadBandInput | LREAL | 0.0 | |
fDeadBandOutput | LREAL | 0.0 | |
fInnerWindow | LREAL | 0.0 | |
fOuterWindow | LREAL | 0.0 | |
fOutMaxLimit | LREAL | 1E+38 | |
fOutMinLimit | LREAL | -1E+38 | |
bPInTheFeedbackPath | BOOL | FALSE | |
bDInTheFeedbackPath | BOOL | FALSE | |
bARWOnIPartOnly | BOOL | FALSE |
控制器功能块 FB_PIDSplitRangeParameterSwitch 具有多个输入和输出,具体描述如下。所有控制器的参数均通过结构体传递给功能块。
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fManipulatedVariable | LREAL | |
bDisableHeating | BOOL | |
bDisableCooling | BOOL | |
nManSyncValue | INT | |
bSync | BOOL | 上升沿设置输出为nManSyncValue |
eMode | E_CtrlMode | 控制模式 |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PIDSplitRangeParameterSwitchParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
eParameterRecord | E_CtrlParameterRecord | |
fOutMaxLimit | LREAL | |
fOutMinLimit | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PIDSplitRangeParameterSwitchParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fThreshold | LREAL | ||
fOutMaxLimit | LREAL | ||
fOutMinLimit | LREAL | ||
bMinWaitTime | TIME |
VAR_INPUT
名称 | 类型 | 初始化 |
---|---|---|
Excute | BOOL | FALSE |
VAR_IN_OUT
名称 | 类型 | 初始化 |
---|---|---|
stParams | ST_CoEReadParams |
VAR_OUTPUT
名称 | 类型 | 初始化 |
---|---|---|
Done | BOOL | FALSE |
Busy | BOOL | FALSE |
Error | BOOL | FALSE |
ErrorId | ETC_CO_Error | ETC_CO_ERROR.ETC_CO_NO_ERROR |
ST_CoEReadParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
wIndex | WORD | 0 | |
bySubindex | BYTE | 0 | |
pBuffer | CAA.PVOID | 0 | |
szSize | CAA.SIZE | ||
pETCSlave | POINTERV TO ETCSlave |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
Excute | BOOL | 上升沿触发 |
ResetType | USINT | bit0:复位轴报警 bit1:复位轴状态 bit2:复位驱动器状态 bit3:复位总线状态 |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
Axis | AXIS_REF_SM3 | 轴名称 |
Drive | ETCSlave | 驱动器名称 |
Master | IoDrvEtherCAT | 主站名称 |
VAR_OUTPUT
名称 | 类型 | 初始化 |
---|---|---|
Done | BOOL | FALSE |
Busy | BOOL | FALSE |
Error | BOOL | FALSE |
ErrorId | UINT |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
Excute | BOOL | 上升沿触发 |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
Busy | ARRAY\[0..(MAX_NUM_NODE_MASTER-1),0..(MAX_NUM_NODE_SLAVE-1)] OF BOOL | 执行中 |
Done | ARRAY\[0..(MAX_NUM_NODE_MASTER-1),0..(MAX_NUM_NODE_SLAVE-1)] OF BOOL | 复位完成 |
Error | ARRAY\[0..(MAX_NUM_NODE_MASTER-1),0..(MAX_NUM_NODE_SLAVE-1)] OF BOOL | |
ErrorId | ARRAY\[0..(MAX_NUM_NODE_MASTER-1),0..(MAX_NUM_NODE_SLAVE-1)] OF UINT | |
NodesValid | BOOL | 硬件树信息可用 |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
Excute | BOOL | 上升沿触发 |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
Busy | ARRAY\[0..(MAX_NUM_NODE_MASTER-1)] OF BOOL | 执行中 |
Done | ARRAY\[0..(MAX_NUM_NODE_MASTER-1)] OF BOOL | 复位完成 |
Error | ARRAY\[0..(MAX_NUM_NODE_MASTER-1)] OF BOOL | |
ErrorId | ARRAY\[0..(MAX_NUM_NODE_MASTER-1)] OF UINT | |
NodesValid | BOOL | 硬件树信息可用 |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_DeadBandParams |
VAR_OUTPUT
名称 | 类型 | 初始化 |
---|---|---|
fOut | LREAL | |
bInIsUnderThreshold | BOOL | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_DeadBandParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fThreshold | LREAL |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_LimiterParams |
VAR_OUTPUT
名称 | 类型 | 初始化 |
---|---|---|
fOut | LREAL | |
bMinLimit | BOOL | |
bMaxLimit | BOOL | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_LimiterParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fMinOutput | LREAL | ||
fMaxOutput | LREAL |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fPwmIn | LREAL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PWMOutParams |
VAR_OUTPUT
名称 | 类型 | 初始化 |
---|---|---|
bPwmOutBitPos | BOOL | |
bPwmOutBitNeg | BOOL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PWMOutParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tTaskCycleTime | TIME | TIME#0ms | |
tPWMPeriod | TIME | ||
bInstantPWMUpdate | BOOL |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fPwmIn | LREAL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PWMOutExtParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
bPwmOutBitPos | BOOL | |
bPwmOutBitNeg | BOOL | |
bWaitTimeActive | BOOL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PWMOutExtParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tTaskCycleTime | TIME | TIME#0ms | |
tPWMPeriod | TIME | ||
tMinOnTime | TIME | ||
tMinOffTime | TIME | ||
tMinWaitTime | TIME |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fManSyncValue | LREAL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_NoiseGeneratorParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_NoiseGeneratorParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fAmplitude | LREAL | 0 |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
bEnable | LREAL | |
fStart | LREAL | |
fTarget | LREAL |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_RampParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
fVeloOut | LREAL | |
bValueReached | BOOL | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_RampParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
fVeloPos | LREAL | ||
fVeloNeg | LREAL |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
nStepointIndex | INT | |
fManValue | LREAL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_SetPointGeneratorParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
bValueReached | BOOL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_SetPointGeneratorParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
pDataTable_ADR | POINTER TO LREAL | 0 | |
pDataTable_SIZEOF | UINT | 0 | |
pDataTable_NumberOfRows | UINT | 0 | |
fVeloPos | LREAL | ||
fVeloNeg | LREAL | ||
bDisableRamping | BOOL | FALSE |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fManValue | LREAL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_SignalGeneratorParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_SignalGeneratorParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
eSignalType | E_CtrlSignalType | ||
tCycleDuration | TIME | ||
fAmplitude | LREAL | ||
fOffset | LREAL | 0.0 | |
fStart | TIME | TIME#0ms |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL | |
fManValue | LREAL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_DigitalFilterParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_DigitalFilterParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | |
tTaskCycleTime | TIME | TIME#0ms | |
nFilterOrder | USINT | ||
pCoefficientsArray_a_ADR | POINTER TO LREAL | ||
nCoefficientsArray_a_SIZEOF | UINT | ||
pCoefficientsArray_b_ADR | POINTER TO LREAL | ||
nCoefficientsArray_b_SIZEOF | UINT | ||
pDigitalFilterData_ADR | POINTER TO ST_DigitalFilterData | ||
nDigitalFilterData_SIZEOF | UINT |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL | |
fManSyncValue | LREAL | |
bSync | BOOL | |
eMode | E_CtrlMode | |
bHold | BOOL |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_MovingAverageFilterParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_MovingAverageFilterParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | 控制周期时间 |
tTaskCycleTime | TIME | TIME#0ms | 任务周期时间 |
nSamplesToFilter | UINT | 采样个数 | |
pWorkArray | POINTER TO LREAL | 0 | 缓冲区数组地址 |
nWorkArraySize | UINT | 0 | 缓冲区数组大小 |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL | |
fManValue | LREAL | |
eMode | E_CtrlMode |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_NotchFilterParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_NotchFilterParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | 控制周期时间 |
tTaskCycleTime | TIME | TIME#0ms | 任务周期时间 |
fNotchFreq | LREAL | 0 | 频率 |
fBandwidth | LREAL | 0 | 带宽 |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL | |
fManSyncValue | LREAL | |
bSync | BOOL | |
eMode | E_CtrlMode | |
bHold | BOOL |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PT1Params |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PT1Params
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | 控制周期时间 |
tTaskCycleTime | TIME | TIME#0ms | 任务周期时间 |
fKp | LREAL | 0 | |
tT1 | TIME | TIME#0ms |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL | |
fManValue | LREAL | |
eMode | E_CtrlMode | |
bHold | BOOL |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PT2Params |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PT2Params
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | 控制周期时间 |
tTaskCycleTime | TIME | TIME#0ms | 任务周期时间 |
fKp | LREAL | 0 | |
tT1 | TIME | TIME#0ms | |
tT2 | TIME | TIME#0ms |
VAR_INPUT
名称 | 类型 | 描述 |
---|---|---|
fIn | LREAL | |
fManValue | LREAL | |
eMode | E_CtrlMode | |
bHold | BOOL |
VAR_IN_OUT
名称 | 类型 | 描述 |
---|---|---|
stParams | ST_PTnParams |
VAR_OUTPUT
名称 | 类型 | 描述 |
---|---|---|
fOut | LREAL | |
eState | E_CtrlState | |
eErrorId | E_CtrlErrorCode | |
bError | BOOL |
ST_PTnParams
名称 | 类型 | 初始化 | 描述 |
---|---|---|---|
tCtrlCycleTime | TIME | TIME#0ms | 控制周期时间 |
tTaskCycleTime | TIME | TIME#0ms | 任务周期时间 |
nOrder | UINT | ||
fKp | LREAL | 0 | |
tT1 | TIME | TIME#0ms |
该库的功能块只与FLOAT数据类型一起工作。该数据类型在附加库中定义为 LREAL 或 REAL 。