SSI_Absolute_Encoder 说明 说明SSI_Absolute_Encoder 指令用于通过用户程序控制工艺模块 TM PosInput 的定位输入和测 量功能。 调用必须以循环方式或在时间控制的程序中,对每个通道调用一次该指令。不允许在事件控制 的中断程序中调用。 工作原理 位置值:位置值在输出参数PositionValue 中提供。每次调用此指令时都会更新位置值。测量值:工艺模块基于组态的更新时间将测量值异步更新到指令调用。每次调用该指令, 都会在输出参数 MeasuredValue中更新工艺模块Zui后确定的测量值。 测量值和位置值作为输出参数并行提供。 将在输出参数 CompleteSSIFrame 中返回完整SSI 帧,而非测量值。MeasuredValue 或 CompleteSSIFrame 将有效,具体取决于参数分配。Capture:输出参数 CaptureStatus = TRUE 表示在输出参数 CapturedValue 中存在有效的Capture 值。 • 在以下条件下捕获 Capture 值: – 数字量输入具有参数分配“Capture” –CaptureEnable = TRUE – 具有 Capture 功能的数字量输入沿 • 输出参数 CaptureStatus在输入参数 CaptureEnable 的下降沿复位。 使用 SSI_Absolute_Encoder 工艺对象 4.5 编程SSI_Absolute_Encoder 计数、测量和位置检测 180 功能手册, 11/2022, A5E32010507-AK通过用户程序更改参数 使用用户程序按如下方式修改参数: 1. 检查相关 Set 变量,以确定工艺对象是否准备好进行参数更改(Set变量 = FALSE)或 更改作业是否仍在运行(Set 变量 = TRUE)。 为此,工艺对象背景 DB 的静态变量中提供了UserCmdFlags 的以下 Set 变量: – SetReferenceValue0 – SetReferenceValue12. 如果工艺对象已准备好进行参数更改,请修改相关静态变量。 为此,可使用工艺对象背景 DB 的以下静态变量: –NewReferenceValue0 / NewReferenceValue0_M(用于 SetReferenceValue0) –NewReferenceValue1 / NewReferenceValue1_M(用于 SetReferenceValue1) 3.设置相关 Set 变量以执行更改作业。 4. 使用输出参数 Error 检查是否出现错误。 如果未出现错误且工艺对象已自动复位 Set变量,则参数更改成功。 工作模式 在工艺对象的“DQ0 特性”(Behavior of DQ0) 下组态工作模式。
工作模式由输出参数CompareMeasuredValue 进行指示: 状态 说明 FALSE 工作模式“将位置值(SSI juedui值)作为参考”:比较功能与位置值配合使用。以下静态变量专用于该工作模式: • NewReferenceValue0 •NewReferenceValue1 • CurReferenceValue0 • CurReferenceValue1工作模式“将测量值作为参考”的这四个特定静态变量被忽略。 TRUE 工作模式“将测量值作为参考”:比较功能与测量值配合使用。以下静态变量专用于该工作模式: • NewReferenceValue0_M •NewReferenceValue1_M • CurReferenceValue0_M • CurReferenceValue1_M工作模式“将位置值(SSI juedui值)作为参考”的这四个特定静态变量 被忽略。 确认事件 可通过输入参数 EventAck的上升沿确认指示的事件。在工艺对象复位计数通道的以下事 件的状态位之前,EventAck 必须保持置位状态:数字量输入的状态可通过静态变量 StatusDI0 和 StatusDI1 获得数字量输入的状态。 将数字量输出与用户程序结合使用在以下情况下,可以通过指令置位数字量输出: 情况 说明 对“置位输出”(Set output) 组态了“由户程 序使用”(Use byuser program) 设置。 相应的数字量输出 DQM 跟随 SetDQm 的值。 对“置位输出”(Set output)组态了“在 CPU 发出置位命令后,达到比较值之 前”(After set command from CPU until comp.value) 设置。 相应数字量输出 DQm 在 SetDQm 的下降沿置 位。位置值对应于比较值时或在 SetDQm 的下降沿,DQm 将复位。 设置相应的静态变量 ManualCtrlDQm (临时覆盖)。 相应的数字量输出 DQM 跟随 SetDQm的值。 对错误的响应 如果调用指令期间发生错误或在工艺模块中出现错误,则会设置 Error 输出参数。可以在 输出参数 ErrorID(页 188) 中读取更多详细错误信息。 消除错误原因并通过设置输入参数 ErrorAck 确认错误消息。如果没有更多的未决错误,工艺对象将复位输出参数 Error 。在确认上一个错误之前不会再报告新错误。输入参数 SSI_Absolute_Encoder 参数声明 数据类 型 默认值 说明 CaptureEnable INPUT BOOL FALSE 启用 Capture 功能启用后,会在相关数字量输入的下一个组态沿处发生 Capture 事件。将在 CaptureEnable 的下降沿复位输出参 数CaptureStatus。未发生 Capture 事件,也会在 CaptureEnable 的下降沿复位启用功能。 无论CaptureEnable 为何值,在出现下一个 Capture 事 件之前,上一个值都将保留在输出参数 CapturedValue中。 ErrorAck INPUT BOOL FALSE SSI_Absolute_Encoder V1.0:在上升沿确认报告的错误状态。 自 V2.0 起的 SSI_Absolute_Encoder: 由上层确认报告的错误状态。EventAck INPUT BOOL FALSE 在上升沿复位以下输出参数: • CompResult0 • CompResult1• ZeroStatus • PosOverflow • NegOverflow输出参数 SSI_Absolute_Encoder参数 声明 数据类型 默认值 说明 StatusHW OUTPUT BOOL FALSE工艺模块状态位:模块已组态并准备好运行。模块数据 有效。 StatusUp OUTPUT BOOL FALSE状态位:上一个位置值在正方向上发生了更改,并且是 在不超过 0.5 s 的时间内完成的。 StatusDown OUTPUT BOOLFALSE 状态位:上一个位置值在负方向上发生了更改,并且是 在不超过 0.5 s 的时间内完成的。 CompResult0OUTPUT BOOL FALSE 状态位:因所选比较条件发生 DQ0(状态变化)比较事 件。 可使用输入参数 EventAck的上升沿复位 CompResult0 。 CompResult1 OUTPUT BOOL FALSE 状态位:因所选比较条件发生DQ1(状态变化)比较事 件。 可使用输入参数 EventAck 的上升沿复位 CompResult1 。 CaptureStatusOUTPUT BOOL FALSE 状态位:发生 Capture 事件后,输出参数 CapturedValue 将具备一个有效的Capture 值 如果已设置输入参数 CaptureEnable,在相应数字量输入 上出现组态的沿时设置状态位CaptureStatus.。 可在输入参数 CaptureEnable 的下降沿复位 CaptureStatus 。CapturedValue OUTPUT DINT 0 Zui后采集的 Capture 值。无论输入参数 CaptureEnable为何值,在出现下一个 Capture 事件之前,该值都会保 留。 如果发生了新的 Capture 事件,CaptureStatus将置位, 可在输入参数 CaptureEnable 的下降沿对其进行复位。 ZeroStatus OUTPUT BOOL FALSE状态位:无论计数方向为何,PositionValue 均已达到或 超出值“0”。 在输入参数 EventAck 的上升沿复位ZeroStatus。
参数 声明 数据类型 默认值 说明PosOverflow OUTPUT BOOL FALSE 状态位:PositionValue 在正方向上超出了编码器位置值范围的上限。 在输入参数 EventAck 的上升沿复位 PosOverflow。 NegOverflow OUTPUT BOOLFALSE 状态位:PositionValue 在负方向上低于编码器位置值范 围的下限。 在输入参数 EventAck 的上升沿复位NegOverflow。 Error OUTPUT BOOL FALSE 发生错误。有关出错的原因,请参考输出参数 ErrorID。ErrorID OUTPUT WORD 0 ErrorID (页 188) 参数显示错误消息的编号。 ErrorID =0000H:没有任何错误。 PositionValue OUTPUT DINT 0 当前位置值 MeasuredValueOUTPUT REAL 0.0 频率、周期或速度(具体取决于组态)的当前测量值 MeasuredValue 或CompleteSSIFrame 将有效,具体取 决于在工艺对象的“测量值”(Measured value) 下进行的参 数分配。CompleteSSIFrame OUTPUT DWORD 0 Zui后接收到的完整 SSI 帧(32 位Zui低有效位)MeasuredValue 或 CompleteSSIFrame 将有效,具体取 决于在工艺对象的“测量值”(Measuredvalue) 下进行的参 数分配。 CompareMeasuredValue OUTPUT BOOL FALSE 状态位:FALSE: 工作模式“将位置值(SSI juedui值)作为参考”;将 位置值作为参考 TRUE:工作模式“将测量值作为参考”;将测量值作为参考。