在项目中,您可以将 I/O 扩展模块添加到 M262 Logic/Motion Controller 以增加数字量和模拟量输入与输出的数量(相对于控制器本身(嵌入式 I/O)自有的数量)。
您可以将 TM3 I/O 扩展模块添加到控制器,并且进一步扩展 I/O 的数量(通过 TM3 发射器和接收器模块)以创建远程 I/O 配置。在创建本地和远程 I/O 扩展时,特殊规则适用于所有情况(请参阅最大硬件配置)。
当您把 I/O 扩展模块组装到控制器上时,M262 Logic/Motion Controller 的 I/O 扩展总线将会生成。
如果控制器无法与程序配置中包含的一个或多个 I/O 扩展模块通讯,并且这些模块未配置为可选模块(请参阅可选 I/O 扩展模块),则控制器视其为 I/O 扩展总线错误。不成功通讯可在控制器启动期间或实时系统期间检测到,并且造成这种情况的原因可能多种多样。I/O 扩展总线上通讯异常的原因包括但不限于 I/O 模块断开或物理上缺失,电磁辐射超出公布的环境标准,或模块以其他方式无法工作。
如果检测到 I/O 扩展总线错误:
控制器的系统状态 LED I/O 亮红灯,指示存在 I/O 错误。
当 EcoStruxure Machine Expert 处于在线模式时, 窗口中存在错误的 TM3 扩展模块和 节点旁边出现红色三角形。
同时提供下列诊断信息:
PLC_R.i_lwSystemFault_1 系统变量的位 0 和位 1 设置为 0。
PLC_R.i_wIOStatus1 和 PLC_R.i_wIOStatus2 系统变量设置为 PLC_R_IO_BUS_ERROR。
TM3_MODULE_R[i].i_wModuleState 系统变量(其中,[i] 标识存在错误的 TM3 扩展模块)设置为 TM3_BUS_ERROR。
TM3_GetModuleBusStatus功能块返回 TM3_ERR_BUS 错误代码。
请参阅 PLC_R 和 TM3_MODULE_R 结构,了解系统变量的详细信息。
下图显示了“选择模式”选项卡:
在 TM3 配置中,您可以使用正常模式 (1) 或故障预置模式 (2)。
TM3_BUS_W.q_wIOBusErrPassiv 系统变量缺省设置为 ERR_ACTIVE,以指定对主动 I/O 错误处理的使用。应用程序可以将这个位设置为 ERR_PASSIVE 以改为使用被动 I/O 错误处理。
缺省情况下,当控制器检测到 TM3 模块存在总线通讯错误时,会将总线设置为“总线关闭”状态,从而使得 TM3 扩展模块输出映像值根据所使用的模式而设置为 0 或故障预置值,并且使得其输入映像值设置为 0。如果 I/O 在至少两个连续的总线任务循环内都未能与扩展模块成功进行数据交换,则 TM3 扩展模块被视为存在总线通讯错误。发生总线通讯错误时,TM3_MODULE_R[i].i_wModuleState 系统变量(其中,[i] 为存在错误的扩展模块号)设置为 TM3_BUS_ERROR。其他位设置为 TM3_OK。
只有在消除了错误源并且执行了以下其中一种操作之后,才能恢复 I/O 扩展总线的正常操作:
电源重置
下载新应用程序
通过将 TM3_BUS_W.q_wIOBusRestart 系统变量设置为 1 重新启动 I/O 总线。只有在无任何扩展模块存在错误 (TM3_MODULE_R[i].i_wModuleState = TM3_BUS_ERROR)时,才会重启总线。请参阅重启 I/O 扩展总线。
使用 EcoStruxure Machine Expert 发出 或 命令。
下表介绍了连接到控制器或接收器模块的模块的行为,这些行为因模块状态和类型而异:
模块类型 |
不支持故障预置管理的模块 |
支持故障预置管理的模块 |
|
---|---|---|---|
冷复位 |
缺省值 (1) |
||
热复位 |
缺省值 (1) |
||
初始值复位(空控制器) |
初始化值 (2) |
||
STOP |
缺省值 (1) |
||
在 TM3 总线上检测到通讯错误 |
初始化值 (2) |
||
控制器处于 HALT 状态 |
缺省值 (1) |
||
TM3 发射器-接收器电缆断开 |
初始化值 (2) |
||
(1):EcoStruxure Machine Expert 配置屏幕中设置的值。 (2):在接收到来自总线的复位命令之后的模块 I/O 值状态。 |
下图显示了“选择模式”选项卡:
在 TM3 配置中,您可以使用正常模式 (1) 或故障预置模式 (2)。
在正常模式 (1) 下,应用程序可以将系统变量 TM3_BUS_W.q_wIOBusErrPassiv 设置为 ERR_PASSIVE 以使用被动 I/O 错误处理。提供此错误处理旨在实现对较早固件版本的兼容性。
在使用 被动 I/O 错误处理的情况下,控制器会尝试以检测到总线通讯错误的模块继续进行数据总线交换。尽管仍存在扩展总线错误,控制器仍会尝试在总线上重新建立与不通讯模块之间的通讯,具体取决于 I/O 扩展模块的类型:
对于 TM3 I/O 扩展模块,I/O 通道的值保持( )大约 10 秒,同时,控制器尝试重新建立通讯。如果控制器在该时间内无法重新建立通讯,则受影响的 TM3 I/O 扩展输出设置为 0。
在故障预置模式 (2) 下,应用程序可以将系统变量 TM3_BUS_W.q_wIOBusErrPassiv 设置为 ERR_PASSIVE 以使用被动 I/O 错误处理。提供此错误处理旨在实现对较早固件版本的兼容性。
在使用 被动 I/O 错误处理的情况下,控制器会尝试以检测到总线通讯错误的模块继续进行数据总线交换。尽管仍存在扩展总线错误,控制器仍会尝试在总线上重新建立与不通讯模块之间的通讯,具体取决于 I/O 扩展模块的类型:
对于 TM3 I/O 扩展模块,I/O 通道的值保持( )大约 200 毫秒,同时,控制器尝试重新建立通讯。如果控制器在该时间内无法重新建立通讯,则受影响的 TM3 I/O 扩展输出设置为故障预置值。
在任一情况下,控制器继续解决逻辑问题,并且嵌入式 I/O 继续由应用程序管理(“由应用程序管理”)(如果控制器如此配备),同时,它尝试重新建立与不通讯 I/O 扩展模块之间的通讯。如果通讯成功,则 I/O 扩展模块将恢复由应用程序管理。如果与 I/O 扩展模块的通讯不成功,您必须找到通讯不成功的原因,然后重置控制器系统的电源,或者使用 EcoStruxure Machine Expert 发出 或 命令。
不通讯的 I/O 扩展模块输入映像的值被保留,应用程序对输出映像值进行设置。
此外,如果不通讯的 I/O 模块干扰未受影响模块的通讯,未受影响的模块也被视为存在错误,并且 TM3_MODULE_R[i].i_wModuleState 系统变量(其中 [i] 为扩展模块号)设置为 TM3_BUS_ERROR。但在以被动 I/O 扩展总线错误处理来继续进行数据交换的情况下,不受影响的模块会应用所发送的数据,而不会像不通讯模块那样应用故障预置值。
因此,您必须在应用程序中监视总线状态以及总线上模块的错误状态,并采取应用程序中提供的相应必要措施。
请参阅控制器状态描述,详细了解在检测到 I/O 扩展总线错误的情况下启动控制器时所采取的措施。
下表介绍了连接到控制器或接收器模块的模块的行为,这些行为因模块状态和类型而异:
模块类型 |
不支持故障预置管理的模块 |
支持故障预置管理的模块 |
||
---|---|---|---|---|
连接到控制器的模块 |
连接到接收器模块的模块 |
连接到控制器的模块 |
连接到接收器模块的模块 |
|
冷复位 |
缺省值 (1) |
缺省值 (1) |
||
热复位 |
缺省值 (1) |
缺省值 (1) |
||
初始值复位(空控制器) |
初始化值 (2) |
初始化值 (2) |
||
STOP |
缺省值 (1) |
缺省值 (1) |
||
在 TM3 总线上检测到通讯错误 |
保持 10 秒,然后应用初始化值 (2) |
配置的故障预置值 |
||
控制器处于 HALT 状态 |
缺省值 (1) |
缺省值 (1) |
||
TM3 发射器-接收器电缆断开 |
受应用程序控制的值 |
初始化值 (2) |
受应用程序控制的值 |
初始化值 (2) |
(1):EcoStruxure Machine Expert 配置屏幕中设置的值。 (2):在接收到来自总线的复位命令之后的模块 I/O 值状态。 |
如果正应用主动 I/O 错误处理,即,在检测到总线通讯错误时嵌入式和 TM3 输出设置为 0 或故障预置值,则应用程序可以在控制器仍在运行的情况下请求重启 I/O 扩展总线(不需要执行冷启动、热启动、电源重置或应用程序下载)。
TM3_BUS_W. q_wIoBusRestart 系统变量可用于请求重启 I/O 扩展总线。此位的缺省值为 0。如果至少一个 TM3 扩展模块出错(TM3_MODULE_R[i].i_wModuleState 设置为TM3_BUS_ERROR),则应用程序可以将 TM3_BUS_W. q_wIoBusRestart 设置为 1,以请求重启 I/O 扩展总线。检测到此位的上升沿时,如果满足以下所有条件,则控制器会重新配置并重启 I/O 扩展总线:
TM3_BUS_W.q_wIOBusErrPassiv 系统变量设置为 ERR_ACTIVE(即,I/O 扩展总线的活动停止)
PLC_R.i_lwSystemFault_1 系统变量的位 0 和位 1 设置为 0(I/O 扩展总线存在错误)
TM3_MODULE_R[i].i_wModuleState 系统变量设置为 TM3_BUS_ERROR(至少一个扩展模块存在总线通讯错误)
如果 TM3_BUS_W.q_wIoBusRestart 系统变量设置为 1,且上述条件中有任一个条件未满足,则控制器不会执行任何操作。
可在控制器中嵌入的 I/O 独立于采用 I/O 扩展的形式添加的 I/O。程序中的逻辑 I/O 配置应与系统的物理 I/O 配置匹配,这十分重要。如果对 I/O 扩展总线添加或删除任何物理 I/O,或根据控制器型号,对控制器进行添加或删除操作(以扩展板的形式),则必须更新应用程序配置。这也适用于安装中包含的任何现场总线设备。否则,扩展总线或现场总线可能不再正常工作,而控制器中可能存在的嵌入式 I/O 会继续操作。
警告 | |
---|---|
I/O 扩展可以在配置中被标记为可选项目。通过接受并非以物理方式连接至控制器上的模块的定义,
功能可提供更加灵活的配置。因此,单个应用程序可以支持 I/O 模块的多个物理配置,实现更高程度的可扩展性,而无需维护同一个应用程序的多个应用程序文件。当运行机器或工艺时,必须充分认识到在 I/O 模块不存在和存在的情况下在应用程序中将它们标示为可选的后果和影响。在风险分析中务必考虑这一功能。
警告 | |
---|---|