S7-CPU中的嵌套深度與使用

發(fā)布時(shí)間:2024-02-15
在s7-cpu中使用嵌套程序需要注意什么,如何使用?
回答:s7-cpu支持嵌套程序,但對(duì)于不同的cpu類型,在使用時(shí)需要注意一些問題。
1. 不同的cpu類型,支持的嵌套程序深度不同,用戶可在cpu的技術(shù)數(shù)據(jù)中查到此參數(shù),以6es7315-2ag10-0ab0為例。
圖1:cpu的嵌套深度參數(shù) 2. 用戶可以按照如下方式使用嵌套功能: a) 在某個(gè)優(yōu)先級(jí)組織塊中調(diào)用多個(gè)嵌套fc/fb。例如,在ob1 (優(yōu)先級(jí)為1)調(diào)用fc1,fc1中調(diào)用fc2,fc2中調(diào)用fc3,等等,一直到fc7,與ob1共8層深度。如果在fc7 中又調(diào)用了fc8 ,此時(shí)會(huì)導(dǎo)致cpu 停機(jī),在cpu在線信息界面中可查看到此情況,如圖2所示。用戶也可在ob35(優(yōu)先級(jí)為12)調(diào)用fc11,fc11中調(diào)用fc12,fc12中調(diào)用fc13,等等,一直到fc17。
圖2:嵌套調(diào)用 b) 在某個(gè)優(yōu)先級(jí)中調(diào)用某個(gè)fc,此fc多次調(diào)用自身。例如,在ob1 (優(yōu)先級(jí)為1)調(diào)用fc1,fc1中仍然調(diào)用fc1,用戶在fc1 的程序中必須編程累計(jì)fc1被調(diào)用的次數(shù),如果達(dá)到了7次,則需要從fc1 中跳出調(diào)用(此方法即為軟件行業(yè)廣泛應(yīng)用的遞歸編程方法)。如果在fc1 調(diào)用自身次數(shù)超出了cpu允許的嵌套深度,此時(shí)會(huì)導(dǎo)致cpu 停機(jī)。
3. 當(dāng)用戶在使用嵌套功能時(shí),可能出現(xiàn)幾種錯(cuò)誤: a) the nesting depth of block calls (u-stack) is too high(嵌套深度太高)。例如:
• 用戶在某個(gè)優(yōu)先級(jí)(如ob1)中調(diào)用嵌套程序深度超出所使用cpu支持深度,如第2節(jié)(a) 部分所描述。
• 用戶在某個(gè)優(yōu)先級(jí)(如ob1)中調(diào)用嵌套程序深度超出所使用cpu支持深度,如第2節(jié)(b) 部分所描述。
此時(shí)cpu將報(bào)16#4575錯(cuò),如圖3所示:
圖3:同步錯(cuò)誤嵌套1 b) the nesting depth of synchronous errors is too high(同步錯(cuò)誤嵌套深度太高)。例如:
• 用戶在ob1中使用l db1.dbb0 語句(cpu中并未下載db1),
• 此時(shí)cpu出現(xiàn)編程錯(cuò)誤,將調(diào)用ob121。
• 如果用戶在下載的ob121中又使用了l db1.dbb0 指令,將導(dǎo)致cpu停機(jī)
此時(shí)cpu將報(bào)16#4573錯(cuò),如圖4所示:
圖4:同步錯(cuò)誤嵌套2 c) error during allocation of local data (分配本地?cái)?shù)據(jù)錯(cuò)誤) 。對(duì)于s7-cpu每個(gè)優(yōu)先級(jí)都有對(duì)本地?cái)?shù)據(jù)大小的限制,如果用戶使用的范圍超出了此限制,cpu將出現(xiàn)錯(cuò)誤。以6es7315-2ag10-0ab0為例,其每個(gè)優(yōu)先級(jí)下的本地?cái)?shù)據(jù)大小為512 byte。如下錯(cuò)誤使用都可能導(dǎo)致此錯(cuò)誤:
• ob1 調(diào)用fc1,fc1 中定義的local data(temp數(shù)據(jù)類型)與ob1中定義的local data(temp數(shù)據(jù)類型)總和超出了cpu 對(duì)此優(yōu)先級(jí)分配的local data 數(shù)量。
• ob1 中嵌套調(diào)用多個(gè)fc, 這些fc 使用的local data 與ob1中定義的local data(temp數(shù)據(jù)類型)總和超過了分配給此優(yōu)先級(jí)的local data 數(shù)量。
此時(shí)cpu將報(bào)16#3576錯(cuò),如圖5所示:
圖5:分配本地?cái)?shù)據(jù)錯(cuò)誤 • 對(duì)于s7-400cpu, 用戶可以在硬件配置中調(diào)節(jié)每個(gè)優(yōu)先級(jí)下的本地?cái)?shù)據(jù)大小,以6es7412-2xg04-0ab0為例,如圖6所示:
圖6:分配本地?cái)?shù)據(jù) 4. 當(dāng)用戶在使用嵌套功能出現(xiàn)錯(cuò)誤時(shí),對(duì)于支持ob88的cpu(例如s7-400cpu),可用通過下載ob88來防止cpu停機(jī),此時(shí)cpu將處于sf狀態(tài),但ob88不可以再出現(xiàn)嵌套使用錯(cuò)誤,否則cpu將進(jìn)入停機(jī)狀態(tài)。對(duì)于不支持ob88的cpu(例如s7-300cpu),當(dāng)出現(xiàn)嵌套調(diào)用錯(cuò)誤時(shí),無法避免cpu進(jìn)入停機(jī)狀態(tài)。 注意:本文中主要以ob1為例說明嵌套調(diào)用,在實(shí)際使用中,用戶應(yīng)當(dāng)注意每個(gè)優(yōu)先級(jí)下對(duì)嵌套調(diào)用的注意事項(xiàng)。
上一個(gè):超聲波測(cè)厚儀TritexTMG-II
下一個(gè):發(fā)財(cái)樹的擺放有什么講究

韓信打野打法教學(xué)(韓信打野攻略思路)
信用卡透支不還款具體會(huì)判幾年
大量現(xiàn)貨批發(fā)數(shù)顯瓶蓋扭力儀 燈頭扭力測(cè)試儀
阻燃鎧裝電纜ZRC-HYA53-30*2*0.5
高防服務(wù)器優(yōu)勢(shì)
網(wǎng)站關(guān)鍵詞如何設(shè)置?網(wǎng)站關(guān)鍵詞布局注意要點(diǎn)
蘋果官網(wǎng)序列號(hào)查詢?nèi)?蘋果官網(wǎng)序列號(hào)在線查詢)
【四川 通信管理局】核查網(wǎng)站備案信息劉文杰先生女士
RC1206FR-073M16L,1206 3.16MΩ 1% 1/4W 電阻
beck電氣元器件產(chǎn)品推薦(電機(jī)馬達(dá)編碼器傳感器全線覆蓋)
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos