模塊化設(shè)計(jì)的思想是把一些相似的功能(比如電機(jī)控制、閥控制)設(shè)計(jì)成函數(shù)或函數(shù)塊,這樣就可以反復(fù)調(diào)用。其優(yōu)點(diǎn)是:使程序架構(gòu)更加清晰,避免重復(fù)編寫相似功能的代碼。不過(guò)可能會(huì)產(chǎn)生一個(gè)疑惑:既然PLC的程序是循環(huán)執(zhí)行,當(dāng)一個(gè)功能塊被多個(gè)外部函數(shù)/函數(shù)塊調(diào)用時(shí),我們應(yīng)如何查看某一次調(diào)用時(shí)的內(nèi)部變量呢?這涉及到函數(shù)塊的調(diào)用環(huán)境問(wèn)題,今天這篇文章,我們來(lái)介紹下如何查看及更改函數(shù)/函數(shù)塊的調(diào)用環(huán)境。
我們以函數(shù)庫(kù)中的電機(jī)控制塊FB5001_MotorControl為例,創(chuàng)建兩臺(tái)電機(jī)控制程序。為了使調(diào)用路徑便于觀察,新創(chuàng)建一個(gè)函數(shù):motorControl ,將二號(hào)電機(jī)在該函數(shù)中調(diào)用,整體代碼如下圖所示:
這樣,在OB1和FC1中兩次調(diào)用相同的函數(shù)塊FB5001_MotorControl。
在OB1中打開(kāi)該函數(shù)塊,轉(zhuǎn)到在線狀態(tài):
在函數(shù)塊的左上方會(huì)顯示當(dāng)前調(diào)用路徑,比如當(dāng)前示例:Main[OB1]。
在函數(shù)塊的右上方有一個(gè)更改調(diào)用環(huán)境的按鈕,如下圖所示:
單擊該按鈕,會(huì)彈出[塊的調(diào)用環(huán)境]對(duì)話框,我們將調(diào)用環(huán)境從之前的OB1改成FC1(OB1->FC1),單擊確定,如下圖所示:
假設(shè)我們將FC1下的FB5001_MotorControl的信號(hào)fuse、start形參置為真(TRUE),如下圖所示:
可看到調(diào)用環(huán)境中其內(nèi)部變量也跟隨著變化(TRUE),如下圖所示:
如果我們把調(diào)用環(huán)境更改成OB1,由于OB1下的FB5001_MotorControl其形參為假(FALSE),因此其內(nèi)部變量也跟隨變化(FALSE),如下圖所示:
好了,關(guān)于博途環(huán)境下如何查看及更改塊的調(diào)用環(huán)境就先介紹到這里。
審核編輯:劉清
-
電機(jī)控制
+關(guān)注
關(guān)注
3573文章
1962瀏覽量
271982 -
plc
+關(guān)注
關(guān)注
5036文章
13903瀏覽量
474349
原文標(biāo)題:博途使用技巧之查看與更改函數(shù)塊的調(diào)用環(huán)境
文章出處:【微信號(hào):方正智芯,微信公眾號(hào):方正智芯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
如何查看及更改函數(shù)/函數(shù)塊的調(diào)用環(huán)境

TF之NN:Tensorflow之一次函數(shù)應(yīng)用,隨機(jī)生成100個(gè)數(shù),利用Tensorflow訓(xùn)練使其逼近已知一次函數(shù)的斜率和截距
請(qǐng)問(wèn)為什么程序在while循環(huán)中只執(zhí)行一次函數(shù)?
ccs3.3能像示波器一樣查看ram中某一個(gè)全局變量的動(dòng)態(tài)變化嗎?
一看就知!static在編程中的作用到底是什么?
當(dāng)函數(shù)執(zhí)行完畢后,如何返回調(diào)用處?

單片機(jī)靜態(tài)局部變量的使用方法

詳解python普通函數(shù)創(chuàng)建與調(diào)用
函數(shù)調(diào)用時(shí)底層會(huì)發(fā)生什么

C語(yǔ)言函數(shù)調(diào)用的形式及過(guò)程
PLC FB函數(shù)塊和FB函數(shù)如何調(diào)用?

SCL中調(diào)用函數(shù)的示例
Freelance函數(shù)和功能塊使用指南 V9.1
調(diào)用SCL函數(shù)塊-事例

評(píng)論