回收西門子模塊6ES75511AB000AB0 回收西門子模塊6ES75511AB000AB0
STEP 7允許將基本數(shù)據(jù)類型或復(fù)式數(shù)據(jù)類型組合成用戶自己定義的數(shù)據(jù)類型,這種類型稱為用戶數(shù)據(jù)類型或UDT。用戶數(shù)據(jù)類型必須首先單獨(dú)建立,并存放在稱為UDT的特殊數(shù)據(jù)塊中,見圖5.8。
圖5.8是用“程序編輯器”建立的一個(gè)UDT,其數(shù)據(jù)組織結(jié)構(gòu)與圖5.7相同,該用戶數(shù)據(jù)類型被定義為UDT200,并單獨(dú)存儲(chǔ)在被稱為UDT200的特殊塊中。也可以為UDT200建立符號(hào)名(如process_data),但是,命名只能在符號(hào)表中進(jìn)行。圖5.9給出了一個(gè)使用UDT定義數(shù)據(jù)塊(如DBl0)的例子,數(shù)據(jù)塊DBl0中定義兩個(gè)變量,一個(gè)為整型,另一個(gè)為用戶數(shù)據(jù)類型(UDT200)。從圖中可以看出,數(shù)據(jù)塊中UDT的用法與基本數(shù)據(jù)類型的用法類似。
用符號(hào)地址或物理地址兩種方式可以訪問UDT中的變量。例如,在DB10中定義了圖5.9格式的數(shù)據(jù),DB10的符號(hào)名為Process,訪問Amount變量可分別寫為DB10.DBW 2或Process.Stack_2.Amount。
建立用戶數(shù)據(jù)類型的目的是為了將UDT作為一種數(shù)據(jù)類型使用,以方便定義多個(gè)結(jié)構(gòu)相同的構(gòu)造變量。圖5.9建立的Stack_2與圖5.7建立的Stack_1相比,不僅大小結(jié)構(gòu)*相同,而且對(duì)Stack_1和Stack_2中元素的訪問方法也*相同。在建立DB10時(shí),由于使用了UDT而使得數(shù)據(jù)塊建立過程方便快捷。在多處使用同樣的UDT時(shí),這一優(yōu)點(diǎn)將更加突出。
程序結(jié)構(gòu)設(shè)計(jì)
STEP 7不僅從不同層次充分支持合理的程序結(jié)構(gòu)設(shè)計(jì),而且也簡(jiǎn)化了結(jié)構(gòu)設(shè)計(jì)的復(fù)雜程度。
一個(gè)復(fù)雜的自動(dòng)化過程可以被分解并定義為一個(gè)或多個(gè)項(xiàng)目(PROJECT);而對(duì)于每個(gè)項(xiàng)目,又可以進(jìn)一步分解并定義給一個(gè)或多個(gè)CPU,每個(gè)CPU都有一個(gè)控制程序(CPU_PROGRAM)。圖5.10顯示了一個(gè)樣本過程,它分成4個(gè)不同的項(xiàng)目:項(xiàng)目1和項(xiàng)目2只有一個(gè)CPU,而項(xiàng)目3和項(xiàng)目4有多個(gè)CPU。這樣,一個(gè)很復(fù)雜的控制任務(wù)的結(jié)構(gòu)設(shè)計(jì),就被簡(jiǎn)化為各個(gè)CPU程序的結(jié)構(gòu)設(shè)計(jì)。項(xiàng)目間或項(xiàng)目中的各CPU程序之間,能以某種方式聯(lián)網(wǎng),實(shí)現(xiàn)信息共享。如在S7協(xié)議支持下,用MPI網(wǎng)以全局?jǐn)?shù)據(jù)通信的方式可方便地建立起聯(lián)系,實(shí)現(xiàn)一個(gè)項(xiàng)目中各CPU共享信息
典型的情況是一個(gè)過程控制任務(wù)只有一個(gè)項(xiàng)目,該項(xiàng)目下也僅有一個(gè)CPU程序,每一個(gè)CPU程序又可依據(jù)時(shí)間特性或事件觸發(fā)特性的差異分類編入不同的組織塊(OB)中。例如,需要以固定時(shí)間間隔循環(huán)執(zhí)行的那部分程序編入組織塊OB35中,為PLC正常運(yùn)行而需進(jìn)行初始化的程序編入組織塊OBl00中。又如,由硬件觸發(fā)的中斷服務(wù)程序編入組織塊OB40中,對(duì)程序執(zhí)行中產(chǎn)生的同步錯(cuò)誤的響應(yīng)處理程序編入組織塊OB121或OB122中。
-
對(duì)于各組織塊中的程序,可以根據(jù)其復(fù)雜程度分別選用線性、分部或結(jié)構(gòu)化等三種形式中的一種程序結(jié)構(gòu)。由于組織塊OB1(主程序循環(huán))中的程序是應(yīng)用程序中主要的也是復(fù)雜的部分,因此,對(duì)OB1中的程序設(shè)計(jì)合理的結(jié)構(gòu)是十分重要的。下面分別說明三種典型結(jié)構(gòu)的特點(diǎn)及選用原則。