国产aaaa级全身裸体精油片_337p人体粉嫩久久久红粉影视_一区中文字幕在线观看_国产亚洲精品一区二区_欧美裸体男粗大1609_午夜亚洲激情电影av_黄色小说入口_日本精品久久久久中文字幕_少妇思春三a级_亚洲视频自拍偷拍

首頁 > 化工知識 > 西門子SCL編程入門教程連載(15)-Variant類型

西門子SCL編程入門教程連載(15)-Variant類型

時間:2020-09-18 來源:方正智芯 瀏覽:

西門子S7-1200/1500系列PLC提供Variant數(shù)據(jù)類型用于對數(shù)據(jù)進(jìn)行引用,有著比ANY類型更強(qiáng)大的功能。今天這篇文章,我們就來聊聊Variant類型,并使用SCL語言編寫一個簡單的例程。
本文包括如下幾個主題:
1、認(rèn)識Variant類型;
2、Variant與ANY類型的區(qū)別;
3、Variant類型使用示例

1、認(rèn)識Variant類型
Variant是西門子S7-1200/1500系列PLC支持的一種新數(shù)據(jù)類型,它是一種可以指向基本數(shù)據(jù)類型、復(fù)雜數(shù)據(jù)類型或者用戶自定義類型的引用。Variant的使用限于FB/FC/OB的形參,也就是說,只能在FB/FC/OB的參數(shù)列表中聲明某個參數(shù)的類型為Variant,但FB的靜態(tài)參數(shù)列表除外,也不能聲明數(shù)據(jù)塊(DB)的元素為Variant類型;
可以給FB/FC的Variant形參賦任何類型的變量,調(diào)用該FB/FC時,不僅會傳遞變量的值,而且會傳遞變量的類型;可以使用SCL指令TypeOf識別變量的類型并做相應(yīng)的處理;
2、Variant與ANY類型的區(qū)別

有兩點:

  1. 兩者支持的數(shù)據(jù)類型不同
    ANY可以指向輸入緩存區(qū)(I)、輸出緩存區(qū)(Q)、外設(shè)(PI/PO)、位存儲區(qū)(M)、數(shù)據(jù)塊(DB)等存儲區(qū),支持基本數(shù)據(jù)類型、字符串等;但不支持?jǐn)?shù)組、用戶自定義類型等復(fù)雜數(shù)據(jù)類型;
    Variant可以引用幾乎所有的數(shù)據(jù)類型(數(shù)組、結(jié)構(gòu)、UDT)的變量,比ANY功能強(qiáng)大;
    注:S7-300/400/1500支持ANY類型

  2. 占用空間大小不同
    ANY需要占用10個字節(jié)的存儲空間,當(dāng)把一個變量定義為ANY類型時,無論其是否指向目標(biāo)變量,都要占用10個字節(jié)的存儲空間;
    Variant不占用背景數(shù)據(jù)塊或者工作存儲器的空間。Variant只是對另一個實例(可以理解為變量)的引用,相當(dāng)于該實例的一個別名。在使用Variant指向該實例時,該實例已經(jīng)被創(chuàng)建了;

3、Variant類型使用示例

舉個例子,創(chuàng)建一個功能,名稱為FC_VariantDemo,參數(shù)如下:

輸入:

  • oprand1,Variant類型;

  • oprand2,Variant類型;

輸出:

  • ouput1,INT類型;

  • ouput2,TIME類型;

FC功能描述:

  • 若oprand1和oprand2的類型為整數(shù),將兩者相加,并將結(jié)果輸出到output1中;

  • 若oprand1和oprand2的類型為TIME,將兩者相加,并將結(jié)果輸出到output2中;

參數(shù)聲明如下圖:

代碼如下:

上述代碼中的TypeOf指令用來判斷變量的類型,VariantGet指令可以訪問一個Variant引用并獲取其真實的數(shù)值及類型;這兩個指令及其它與Variant操作的指令我們將在下一篇文章詳細(xì)介紹。

創(chuàng)建DB_VariantDemo,添加元素如下:

在OB1中調(diào)用FC_VariantDemo的示例如下圖所示:

好了,關(guān)于Variant類型就先介紹這么多。我開通了微信視頻號,以視頻的方式分享工控小知識。具有視頻號內(nèi)測權(quán)限的小伙伴歡迎掃描下方的二維碼關(guān)注我的視頻號:

版權(quán):如無特殊注明,文章轉(zhuǎn)載自網(wǎng)絡(luò),侵權(quán)請聯(lián)系cnmhg168#163.com刪除!文件均為網(wǎng)友上傳,僅供研究和學(xué)習(xí)使用,務(wù)必24小時內(nèi)刪除。
相關(guān)推薦