博圖中的自定義數(shù)據(jù)類型(UDT),你必須要掌握!
一、什么是UDT? ?
UDT是一種自定義的數(shù)據(jù)類型,它可以由多個不同數(shù)據(jù)類型元素組成,元素可以是基本數(shù)據(jù)類型,也可以是STRUCT、數(shù)組等復(fù)雜數(shù)據(jù)類型以及其它UDT等。UDT類型嵌套UDT類型的深度限制為 8 級。
博圖從V11開始,S7-1200支持PLC數(shù)據(jù)類型(UDT),這篇文章我將使用博圖V16版本,來為大家介紹UDT的具體使用方法。
二、如何建立UDT并用于編程??
為了讓大家對UDT有個直觀的認(rèn)識,我將建立一個UDT的數(shù)據(jù)類型,并添加幾個跟電機(jī)控制相關(guān)的變量:啟動、停止和電機(jī)。
1、新建UDT
新建博圖項(xiàng)目后,在PLC的菜單下的PLC數(shù)據(jù)類型選型下,點(diǎn)擊“添加新數(shù)據(jù)類型”,如圖1所示。

圖 1 新建UDT
2、使用UDT
在程序塊選項(xiàng)下,點(diǎn)擊“添加新塊”,并在全局?jǐn)?shù)據(jù)塊中新建電機(jī)的UDT數(shù)據(jù)類型,如圖2所示。

圖 2 使用UDT
3、編寫程序
打開OB1編寫“啟保?!背绦?,變量使用UDT的數(shù)據(jù)元素,如圖3所示。

圖 3 編寫程序
三、更多UDT的應(yīng)用 ?
UDT功能非常強(qiáng)大,除了上面的這種應(yīng)用外,還有以下幾種應(yīng)用的情況。
1、UDT在PLC變量表的應(yīng)用
在PLC數(shù)據(jù)類型中添加對應(yīng)的UDT,并編寫數(shù)據(jù),然后在PLC變量表中使用,如圖4所示。

圖 4 PLC變量表中使用UDT
需要注意的是,在PLC變量表中使用UDT,一般只適合變量連續(xù)的場合。
2、UDT在全局?jǐn)?shù)據(jù)塊中使用 ?
UDT在全局?jǐn)?shù)據(jù)塊的使用,有兩種情況,一種是UDT類型的全局?jǐn)?shù)據(jù)塊,一種是UDT類型是全局?jǐn)?shù)據(jù)塊的一個元素。情況1如圖5所示。

圖 5 UDT類型的全局?jǐn)?shù)據(jù)塊
情況2如圖6所示。

圖 6 UDT類型在全局?jǐn)?shù)據(jù)塊中使用
3、UDT類型在博圖WinCC中使用 ?
在博圖WinCC中的HMI變量可以直接使用UDT數(shù)據(jù)類型,這種方式相比單個類型的變量更加方便,如圖7所示。

圖 7 UDT類型在HMI中使用
UDT除了這些使用比較方便外,還可能方便進(jìn)行修改,假設(shè)我的某個UDT的元素需要進(jìn)行修改,可以在UDT的類型中進(jìn)行修改,在編譯一下,所有用到該UDT的都可以進(jìn)行快速修改,如圖8所示。

圖 8 UDT的數(shù)據(jù)修改
四、總結(jié)
這篇文章中介紹了PLC自定義數(shù)據(jù)類型(UDT)的一些基本的使用,開頭我曾介紹到UDT的元素可以是STRUCT、數(shù)組等復(fù)雜數(shù)據(jù)類型以及其它UDT,并且UDT的嵌套深度為8層,所以可以進(jìn)行非常復(fù)雜的應(yīng)用,即方便編程也方便管理。如果你有關(guān)于UDT的一些看法和應(yīng)用案例,可在評論區(qū)交流討論。
來源:技成培訓(xùn)網(wǎng),作者:技成-劉郴,未經(jīng)授權(quán)不得轉(zhuǎn)載!
粉絲福利
微信掃碼領(lǐng)西門子全套電子資料包(含西門子全系列PLC手冊,案例程序等指令)
