任務
以下示例顯示了如何通過一個可變下標尋址函數塊中的多重實例。這些實例將在一個 FOR 循環中迭代處理。
創建示例程序
首先,創建函數塊 "MyFB"。 生成 5 個 "MyFB" 背景數據塊。 生成全局數據塊 "DBAnyStorage" 并在數據塊的屬性中將存儲器預留區域設置為“0 字節”。 在 "DBAnyStorage" 中,聲明 "DB_ANY" 數據類型的 ARRAY 中包含 5 個元素。 初始化時,可在啟動 OB 中將 5 個背景數據塊的符號名稱分別指定給各 ARRAY 元素。 創建函數塊 "LoopCallDoMyFB" ,并通過 FOR 迭代訪問 "MyFB" 的單個實例。 這些實例將傳送到函數 "DoMyFB" 中依次執行。 這些傳遞的實例在運行過程中確定。即,在程序的創建過程中,無法確定待傳送的實例是否與 "DoMyFB" 接口中所聲明的參數相匹配。為此,建議在函數塊 "LoopCallDoMyFB" 中使用指令 "TypeOfDB" 進行檢查。 在 "DoMyFB" 的接口中,聲明 in/out 參數 "currentMyFBInstance"。在運行過程中, "LoopCallDoMyFB" 在將待處理的 "MyFB" 實例傳遞到 "DoMyFB" 函數中。(作為參數實例進行傳遞)。 |
結果
函數塊 "DoMyFB" 逐一對 "MyFB" 的所有實例進行編輯。
審核編輯:劉清
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
處理器
+關注
關注
68文章
19332瀏覽量
230156 -
存儲器
+關注
關注
38文章
7509瀏覽量
163971 -
for循環
+關注
關注
0文章
61瀏覽量
2512
原文標題:西門子博途:ARRAY of DB_ANY 中參數實例的使用示例
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
SolvedAbout在Array中的公式用法
, "formula" device, if we have ArrayX as one-dimensional array,ArrayX[0:2] would
發表于 03-28 10:39
python代碼示例之基于Python的日歷api調用代碼實例
本文檔的主要內容詳細介紹的是python代碼示例之基于Python的日歷api調用代碼實例。
發表于 09-06 14:25
?42次下載
淺談OpenAMP的應用程序中RPMSG_ADDR_ANY含義
在OpenAMP的應用程序中,經常看到地址被設置成RPMSG_ADDR_ANY。在通信過程中,為什么可以把源地址、目的地址設置成任意值? 這個宏的名字不夠清楚,它的本意是讓系統自動選擇。如果設置
對于ANY數據類型及參數傳遞的詳細解析
ANY是一種用于傳遞指針的形參數據類型,可視為POINTE R 類型的擴展,較POINTER 類型為復雜,長度為10個字節,增加的4 字節,最高字節 (Byte 0) 固定為B#16#10,第二字節
S7-1200:DB_ANY類型
DB_ANY 數據類型用來標識任意數據塊。對于 S7-1200,可以選擇訪問編程期間尚不可用的數據塊。為此,在訪問塊的塊接口中創建一個 DB_ANY 數據類型的塊參數。數據塊名稱或先前分配給數據塊名稱的
SystemVerilog中的fork-join_any
fork-join_any和fork-join有所不同,fork-join_any的父進程一直阻塞,直到任何一個并行的子進程結束。
西門子博途中DB_ANY數據類型的使用
DB_ANY 數據類型用來標識任意數據塊。對于 S7-1200/1500 系列的 CPU,可以選擇訪問編程期間尚不可用的數據塊。為此,請在訪問塊的塊接口中創建一個 DB_ANY 數據類型的塊參數
ARRAY 數據類型的變量
要求 全局數據塊已打開。 操作步驟 要聲明一個 ARRAY 數據類型的變量,請按以下步驟操作: 在“名稱”(Name) 列中,輸入變量的名稱。 在“數據類型”列中輸入“Array”數據
評論