發布日期:2022-04-17 點擊率:120
描述 采用間接尋址時,只有程序執行時,用于讀或寫數值的地址才得以確定。使用這種方法可以減少編程量并使得程序更靈活。通常來講,程序創建后訪問地址也就確定了。為了使得間接尋址更靈活和更安全,可以 使用"Array"數據類型用于組合相同的數據類型。 對于不同的存儲區,采用index來訪問相關的針對每個應用不同的變量。 在下面的例子中,對于三個變量的訪問采用了不同的存儲區。表01 顯示了三個變量的訪問列表,每個都有單獨的索引。 表01 創建一個功能,并聲明輸入變量為"Int"類型。圖.01 顯示了對于"AccessGroupInt"功能塊的編程示例,通過index進行間接尋址并返回值。可以在程序中直接使用間接訪問,例如使用指令#TempValue:= "AccessGroupInt"(#Index);。這一編程方法 可追蹤,因為可以使用交叉索引。 安全,因為僅使用了預定義的內存區。 通用,因為既可以用于標準塊也可以用于優化的數據區 。 圖. 01 在下面的示例中數據被從三個不同的優化的數據塊中讀出或寫入。三個數據塊"Silo_Water", "Silo_Sugar" 和"Silo_Milk"都包含相同的變量聲明: DB 變量1:"MyBool" Bool類型 DB 變量2:"MyInt" Int類型 DB 變量3:"MyWord" Word類型 圖. 02 創建的PLC數據類型"SiloUDT"用于尋址包含不同數據類型的DB變量。 "AccessGroupSiloRead"功能塊用于讀出返回值,是由PLC 數據類型 "SiloUDT"定義的。基于此可以在一個FB中間接訪問,例如如圖.03所示的指令: "Silo_Handling_OnlyReading"("AccessGroupSiloRead"(Index:= #Silo_Index)); 圖. 03 創建環境 此FAQ中的截屏由 STEP 7 (TIA Portal) V13創建。 如需了解更多信息,請訪問西門子工業官網
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV