1本地數據堆棧區L是局部變量,L變量僅在調用它的子程序中有效。
不同子程序中的L變量可用同名。如,FC1中有L0.1,FC2中也有L0.1這個變量,而2者間沒任何關系、也不會相互沖突。
2不需要做初始化
3 局部變量解釋:
L 是局部存儲器,作為暫時存儲器或給子程序傳遞參數,L也可以L*.*(如L2.5 是BOOL 量,是第二個字節的第五位),LB,LW,LD來存取,但僅僅在它被創建的塊中有效,它也可以在符號表中定義,但只能在各個POU自己的符號表中定義.
4. 全局變量和局部變量在符號尋址編程時,全局變量直接顯示符號名,而局部變量在符號前會加上#,采用局部變量編程有很多優勢:程序可以功能化移植(減少重復編程量),大程序方便協同作戰(把任務分成各個功能塊),這是SIEMENS的PLC比較*性之處。
5 使用時請注意,一定要先賦值,后使用局部變量又稱臨時本地數據區(L堆棧),位于CPU的工作存儲區用于存儲程序塊(OB、FB、FC)被調用時的臨時數據,訪問臨時數據比訪問數據塊中的數據更快。
“L是局部變量,只能在局部使用,不能在全局使用。"只是在這個程序塊中可以使用的,使用結束后就會自動復位,它不能被其他的程序使用。臨時變量的使用原則就是:先賦值,再使用
在S7-300CPU中,每一個優先級的局部數據區的大小是固定的。一般在組織塊中調用程序塊(FB、FC等),操作系統分配給每一個執行級(組織塊OB,一般在OB塊執行并調用其它FB、FC)的局部數據區的zui大數量為256B(字節),組織塊OB自己占去20B或22B,還剩下zui多234B可分配給FC或FB。如果塊中定義的局部數據的數量大于256字節,該塊將不能下載到CPU中。在下載過程中提示錯誤信息:The?block?could?not?be?copied(該塊不能被復制)。如果單擊錯誤信息框中的Detail(詳細)按鈕,將彈出幫助信息:Incorrect?local?data?length(不正確的局部數據長度)。
在SIMATIC管理器中依次展開你的項目到Blocks(塊),右擊選中某個塊,選擇菜單Object?Properties(目標屬性)選項。在塊的屬性對話框中,可以看到塊所需要的局部數據字節數(Length長度:Local?Data(局部數據))。
在SIMATIC管理器中選中你的項目的Block(塊(文件夾,執行菜單命令Options(選項)/Reference?Data(參考數據)/Display(顯示),然后選擇Program?Structure(程序結構),即可在參考表中查看局部數據的占用情況。
聯系我們
上海翰粵自動化系統有限公司 公司地址:上海市松江區思賢路2399弄137號 技術支持:化工儀器網掃一掃 更多精彩
微信二維碼
網站二維碼