- 機(jī)器自動化控制器原理與應(yīng)用
- 徐世許
- 959字
- 2020-12-04 16:25:51
3.3 變量
在NJ系列控制器中,變量用來與外部設(shè)備交換I/O信息,完成數(shù)據(jù)計算和其他過程。
變量存儲與外部設(shè)備交換的I/O數(shù)據(jù),或存儲內(nèi)部POU處理時的臨時數(shù)據(jù)。換句話說,變量是一個數(shù)據(jù)的容器,有名字、數(shù)據(jù)類型和其他屬性。
不需要為變量分配一個內(nèi)存地址。然而,需要時可以分配一個特定的內(nèi)存地址,例如,NJ系列CPU單元自動為變量在內(nèi)存區(qū)分配地址。
3.3.1 變量類型
變量一般分為下面三種類型。
1.用戶定義變量
用戶定義一個用戶變量的所有的屬性。
2.半用戶定義變量
這些變量用來訪問特定的設(shè)備和數(shù)據(jù)。有兩種類型的半用戶定義的變量:設(shè)備變量和凸輪數(shù)據(jù)變量。
3.系統(tǒng)定義變量
在NJ系列CPU單元里,系統(tǒng)定義的變量預(yù)先提供。名稱和所有的屬性都由系統(tǒng)定義,它們有特定的功能。每一種功能模塊都要使用系統(tǒng)定義的變量。
3.3.2 應(yīng)用于POU的用戶定義變量的類型
在POU中應(yīng)用的用戶定義的變量類型如下。
1.本地變量
本地變量定義在一個POU(程序、功能或功能塊)中,它只能在該P(yáng)OU中被讀或?qū)憽H绻鸓OU是一個程序,本地變量就是內(nèi)部變量。如果POU是一個功能塊或功能,本地變量就是內(nèi)部變量、輸入變量、輸出變量、輸入-輸出變量和外部變量的統(tǒng)稱。
(1)內(nèi)部變量
內(nèi)部變量只用在一個POU中,一個內(nèi)部變量在POU的本地變量表中聲明,不能從POU外訪問內(nèi)部變量的值。在不同的POU中可以聲明同一名稱的內(nèi)部變量,這些變量的每一個都分配不同的內(nèi)存地址。
(2)輸入變量
當(dāng)POU被調(diào)用時,從調(diào)用的POU為輸入變量分配輸入?yún)?shù)的值。輸入變量在POU的本地變量表中聲明。
(3)輸出變量
在一個POU的處理完成之前,將返回到調(diào)用的POU中的輸出參數(shù)分配給輸出變量。輸出變量在POU的本地變量表中聲明。
(4)輸入-輸出變量
當(dāng)POU被調(diào)用時,從調(diào)用的POU為輸入-輸出變量分配輸入-輸出參數(shù)的值。如果改變一個POU中輸入-輸出變量的值,輸入-輸出參數(shù)的值隨之改變。輸入-輸出變量在POU的本地變量表中聲明。
2.外部變量
外部變量用來訪問POU外部的數(shù)據(jù)。可以從POU中訪問全局變量。
3.全局變量
全局變量在全局變量表中聲明。
從系統(tǒng)配置和從單元配置中自動產(chǎn)生的設(shè)備變量,以及從軸設(shè)置表中產(chǎn)生的軸/軸組變量,自動登記為全局變量。
3.3.3 變量的屬性
變量的屬性見表3-12。
表3-12 變量的屬性
注意,并非所有的變量都支持表3-12中的變量屬性,這取決于變量的類型,例如,程序中的內(nèi)部變量不支持網(wǎng)絡(luò)公開屬性和邊緣屬性,僅全局變量支持網(wǎng)絡(luò)公開屬性,邊緣屬性僅用于功能塊的輸入變量。
- Spark編程基礎(chǔ)(Scala版)
- 樂高機(jī)器人EV3設(shè)計指南:創(chuàng)造者的搭建邏輯
- Hands-On Machine Learning on Google Cloud Platform
- 極簡AI入門:一本書讀懂人工智能思維與應(yīng)用
- 計算機(jī)網(wǎng)絡(luò)技術(shù)實(shí)訓(xùn)
- 計算機(jī)組網(wǎng)技術(shù)
- Flink原理與實(shí)踐
- ZigBee無線通信技術(shù)應(yīng)用開發(fā)
- Photoshop CS4數(shù)碼攝影處理50例
- 工業(yè)機(jī)器人操作
- 簡明學(xué)中文版Flash動畫制作
- Advanced Deep Learning with Keras
- x86/x64體系探索及編程
- CPLD/FPGA技術(shù)應(yīng)用
- Flash 8中文版全程自學(xué)手冊