任務(wù)
以下示例顯示了如何通過一個可變下標尋址函數(shù)塊中的多重實例。這些實例將在一個 FOR 循環(huán)中迭代處理。
創(chuàng)建示例程序
首先,創(chuàng)建函數(shù)塊 "MyFB"。 生成 5 個 "MyFB" 背景數(shù)據(jù)塊。 ![]() 生成全局數(shù)據(jù)塊 "DBAnyStorage" 并在數(shù)據(jù)塊的屬性中將存儲器預(yù)留區(qū)域設(shè)置為“0 字節(jié)”。 在 "DBAnyStorage" 中,聲明 "DB_ANY" 數(shù)據(jù)類型的 ARRAY 中包含 5 個元素。 ![]() 初始化時,可在啟動 OB 中將 5 個背景數(shù)據(jù)塊的符號名稱分別指定給各 ARRAY 元素。 ![]() 創(chuàng)建函數(shù)塊 "LoopCallDoMyFB" ,并通過 FOR 迭代訪問 "MyFB" 的單個實例。 這些實例將傳送到函數(shù) "DoMyFB" 中依次執(zhí)行。 這些傳遞的實例在運行過程中確定。即,在程序的創(chuàng)建過程中,無法確定待傳送的實例是否與 "DoMyFB" 接口中所聲明的參數(shù)相匹配。為此,建議在函數(shù)塊 "LoopCallDoMyFB" 中使用指令 "TypeOfDB" 進行檢查。 ![]() 在 "DoMyFB" 的接口中,聲明 in/out 參數(shù) "currentMyFBInstance"。在運行過程中, "LoopCallDoMyFB" 在將待處理的 "MyFB" 實例傳遞到 "DoMyFB" 函數(shù)中。(作為參數(shù)實例進行傳遞)。 ![]() |
結(jié)果
函數(shù)塊 "DoMyFB" 逐一對 "MyFB" 的所有實例進行編輯。
審核編輯:劉清
-
處理器
+關(guān)注
關(guān)注
68文章
19833瀏覽量
233939 -
存儲器
+關(guān)注
關(guān)注
38文章
7641瀏覽量
166666 -
for循環(huán)
+關(guān)注
關(guān)注
0文章
61瀏覽量
2687
原文標題:西門子博途:ARRAY of DB_ANY 中參數(shù)實例的使用示例
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
KaihongOS多實例MQTT接口
SolvedAbout在Array中的公式用法
python代碼示例之基于Python的日歷api調(diào)用代碼實例

淺談OpenAMP的應(yīng)用程序中RPMSG_ADDR_ANY含義

對于ANY數(shù)據(jù)類型及參數(shù)傳遞的詳細解析

編程語言SCL中ANY數(shù)據(jù)類型

DB207 的參數(shù)文檔

S7-1200:DB_ANY類型
SystemVerilog中的fork-join_any
西門子博途中ARRAY的使用示例

西門子博途中DB_ANY數(shù)據(jù)類型的使用

評論