有关控制数据记录传送到 CPU 时的特殊要求 • 启用组态控制时,如果没有控制数据记录,则表示 CPU尚未准备就绪,无法操作。如 果在启动 OB(如,OB 100)中未传送有效的控制数据记录,则 CPU 将从启动模式返 回到 STOP模式。此时,不会对集中式 I/O 进行初始化。CPU 转入 STOP 操作模式的原 因将保存在诊断缓冲区中。 说明 如果在启动 OB中将错误的控制数据记录传送到 CPU,则 CPU 可能无法启动。 此时,需将 CPU 复位为出厂设置,再传送正确的控制数据记录。• CPU 将执行 WRREC 指令,异步传输控制数据记录。必须在一个循环内重复地 在启动 OB(如,OB 100)中调用WRREC,直到输出参数“BUSY”和“DONE”指示数据记 录已完成传送。 – 提示:要编程该循环操作,请使用 SCL 编程语言中的REPEAT ... UNTIL 指令。 REPEAT "WRREC_DB"(REQ :="start_config_control", ID := "Local Configuration", INDEX := 196,LEN := "conf_LEN", DONE => "conf_DONE", BUSY => "conf_BUSY",RECORD := "ConfDB".ConfigControl["ConfDB".Option], //选择控制数据记录*ERROR => "conf_ERROR", STATUS => "conf_STATUS"); UNTIL NOT"conf_BUSY" END_REPEAT; *用户程序中站组态方式的选择为了让 CPU 确定需执行的站组态方式,需在用户程序中设置不同的控制数据记录组态方式。例如,可通过 Int 变量对应的数组元素进行选择。请注意,选择控制数据记录的变量需位于保持性存储区域中。如果该变量 不具有保持性,则会在 CPU启动时被初始化而无法用于选择站组态方式。 – 在图形化编程语言中,可使用程序控制指令实现该循环操作。