當(dāng)前位置: 首頁 > 工業(yè)電氣產(chǎn)品 > 高低壓電器 > 微型斷路器
發(fā)布日期:2022-04-17 點(diǎn)擊率:333
描述 優(yōu)化塊臨時(shí)數(shù)據(jù)區(qū)中的變量在每次調(diào)用塊時(shí)被用缺省值初始化(如,INT 的缺省值是 0)。下列內(nèi)容不會(huì)被初始化: ● 聲明為數(shù)組的變量。 ● 非優(yōu)化塊中聲明的變量。 在 STEP 7 (TIA 博途)中, 對(duì)西門子S7-1500 的優(yōu)化存儲(chǔ)區(qū)中的結(jié)構(gòu)體可以用用戶自定義的值進(jìn)行初始化。 如果要把定義的值加載到結(jié)構(gòu)體中的獨(dú)立元素,只能先初始化臨時(shí)結(jié)構(gòu)體,再分配給靜態(tài)結(jié)構(gòu)體。在SCL中使用FOR循環(huán)可以在運(yùn)行時(shí)用很少的代碼初始化大量區(qū)域(數(shù)組結(jié)構(gòu))。 圖. 01 是一個(gè)DB塊結(jié)構(gòu)中有兩個(gè)DB變量的示例。第二個(gè)DB變量的PLC數(shù)據(jù)類型使用的是 "Array [1..10] of motor data type". 圖. 01 使用 "MOVE" 指令(復(fù)制值) 可以完整的初始化結(jié)構(gòu)體 InOut 變量 "Motor". 在下面的例子中,臨時(shí)變量"tmp_Motor" 的內(nèi)容傳到了 InOut 變量 "Motor". 在 LAD/FBD 中, 位信號(hào)通過slice訪問復(fù)制到了狀態(tài)字(圖. 02). 圖. 02 臨時(shí)變量和InOut變量必須具有相同的數(shù)據(jù)類型或相同的結(jié)構(gòu)體數(shù)據(jù)類型。圖. 03 說明了在SLC中編程實(shí)現(xiàn)完整初始化 InOut 變量 "Motor" 和單個(gè)元素的位到位訪問。 圖. 03 下面的例子說明初始化DB變量 "Motor field". 在SCL中使用 FOR 指令,循環(huán)程序重復(fù)執(zhí)行只要運(yùn)行變量 "tmp_Counter" 在指定的范圍內(nèi)。由于PLC數(shù)據(jù)類型是 "Array [1..10] of motor data type", 程序循環(huán)必須執(zhí)行10次("1 TO 10 DO") 來初始化結(jié)構(gòu)體變量中的所有數(shù)組元素。 圖. 04 注意 在 UDT中,可以通過聲明定義初始值,這樣基于UDT的每一個(gè)變量都有其初始值。只有對(duì)運(yùn)行中的設(shè)備做程序復(fù)位時(shí)才需要初始化結(jié)構(gòu)體變量。當(dāng) STOP/RUN 切換時(shí),就會(huì)從從裝載存儲(chǔ)區(qū)提取初始值,這相當(dāng)于一次復(fù)位。
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV