和利時mascv培訓(xùn)教程macsv軟件基礎(chǔ)_第1頁
和利時mascv培訓(xùn)教程macsv軟件基礎(chǔ)_第2頁
和利時mascv培訓(xùn)教程macsv軟件基礎(chǔ)_第3頁
和利時mascv培訓(xùn)教程macsv軟件基礎(chǔ)_第4頁
和利時mascv培訓(xùn)教程macsv軟件基礎(chǔ)_第5頁
已閱讀5頁,還剩101頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

2023/4/17PlantView軟件部分1HOLLiAS-MACSⅤ系統(tǒng)培訓(xùn)教程系列之

基礎(chǔ)培訓(xùn)課程2本演示為HOLLiAS—MACS培訓(xùn)教程配套演示,如有問題請電話010-82922200至工業(yè)自動化培訓(xùn)部或email至HOLLiAS-MACSⅤ系統(tǒng)軟件2了解軟件的功能及各組成部分了解軟件的組態(tài)流程掌握軟件的基本原理以及各部分的操作方法課程目標(biāo)HOLLiAS-MACSⅤ系統(tǒng)軟件3第7講控制器算法組態(tài)第7講控制器算法組態(tài)4第7講控制器算法組態(tài)第一節(jié)控制器算法組態(tài)軟件介紹軟件功能軟件界面組成介紹軟件的一般使用步驟51.控制器算法組態(tài)軟件的功能控制器算法組態(tài)軟件是針對底層控制器的軟件。軟件安裝在工程師站上,作為控制方案的開發(fā)平臺,包括控制方案編輯器和仿真調(diào)試器兩部分。完成用戶控制方案的組態(tài),具體包括:硬件配置數(shù)據(jù)庫定義用不同的算法語言編寫用戶控制方案仿真調(diào)試登錄控制器,把程序下裝到主控單元;運(yùn)行并在線調(diào)試程序。

控制器算法組態(tài)軟件的主要功能第7講控制器算法組態(tài)62.軟件的界面組成介紹菜單欄,提供各種常用命令工具欄,常用命令的快捷按鈕POU的聲明區(qū)。用來聲明(定義)POU的類型、名稱,使用的局部變量POU的標(biāo)題欄,顯示POU的名稱、類型縮略、采用的編程語言POU的編程區(qū)。編寫用戶控制方案的地方信息窗口,顯示編譯信息和查找信息對象組織器。在窗口中分別列舉當(dāng)前工程中的程序、數(shù)據(jù)類型、視圖、資源四種對象。一般關(guān)注程序和資源。如圖展示了工程中的所有程序。標(biāo)題欄,顯示工程文件的名稱第7講控制器算法組態(tài)72.軟件的界面組成介紹對象組織器——資源窗口,常用資源有:全局變量表、MACS配置、任務(wù)配置名為“IO”的全局變量定義表,是對名為IO的程序方案中相關(guān)信息的解釋硬件配置,組態(tài)I/O模塊,定義輸入、輸出通道標(biāo)志符,即分配測點(diǎn)的采集通道(與實(shí)際硬件聯(lián)系)任務(wù)配置,定義工程中的程序執(zhí)行方式,一般設(shè)計為周期調(diào)用式。能被整個工程中應(yīng)用的變量-全局變量第7講控制器算法組態(tài)83.控制器算法組態(tài)軟件的一般使用步驟新建工程硬件配置(設(shè)備組態(tài))

數(shù)據(jù)庫定義

控制算法組態(tài)

工程編譯

仿真調(diào)試

登錄控制器,將工程下裝到主控單元運(yùn)行程序并在線調(diào)試

第7講控制器算法組態(tài)9第7講控制器算法組態(tài)第二節(jié)目標(biāo)安裝、新建工程及相關(guān)設(shè)置目標(biāo)安裝新建工程及相關(guān)設(shè)置101.目標(biāo)安裝控制器算法組態(tài)軟件要應(yīng)用于某套硬件系統(tǒng),就需要指定相應(yīng)的運(yùn)行平臺,主要是引入各通信設(shè)備的特性定義等信息。所以,在工程師站上第一次使用控制器算法組態(tài)軟件時,首先需要“安裝目標(biāo)”,才能進(jìn)行后續(xù)工作。通過安裝目標(biāo),可自動引入硬件設(shè)備的特性描述文件,一般每種型號的模塊都有其對應(yīng)的設(shè)備特性描述文件,文件擴(kuò)展名為“.gsd”。

目標(biāo)安裝——目的第7講控制器算法組態(tài)112.新建工程及相關(guān)設(shè)置

新建工程的相關(guān)設(shè)置

新建工程啟動控制器算法組態(tài)軟件第7講控制器算法組態(tài)

保存新建的工程申明:一個工程僅針對一個現(xiàn)場控制站!如果你的工程中有三個現(xiàn)場控制站,就應(yīng)該分別創(chuàng)建三個對應(yīng)的工程。工程名,建議用英文字母命名。該工程的所有組態(tài)信息都將保存在這個文件中。122.新建工程及相關(guān)設(shè)置點(diǎn)擊『窗口』『庫管理器』

在此區(qū)域點(diǎn)右鍵『添加庫』彈出窗口中列舉了可選的庫資源如上圖,在工程中若想使用hsac庫中提供的功能塊和函數(shù),就需要選中hsac.lib庫,添加到你的工程中。如上圖,在工程中若想使用hsac庫中提供的功能塊和函數(shù),就需要選中hsac.lib庫,添加到你的工程中?,F(xiàn)在,在你的工程中就可以使用hsac.lib庫中提供的功能塊和函數(shù)資源了。比如你可以在一個POU中調(diào)用HSPID功能塊以實(shí)現(xiàn)PID調(diào)節(jié)。

新建工程的相關(guān)設(shè)置——添加函數(shù)庫第7講控制器算法組態(tài)132.新建工程及相關(guān)設(shè)置到底需要將哪些函數(shù)庫添加到你的工程中?是由這個工程的實(shí)際控制要求決定的。要做哪些運(yùn)算、實(shí)現(xiàn)哪些控制功能,往往可以利用軟件提供的具備相應(yīng)功能的函數(shù)或功能塊來實(shí)現(xiàn);而這些函數(shù)或功能塊已經(jīng)事先按照功能分類,存放在了指定的函數(shù)庫當(dāng)中;只要在庫管理器中添加某個函數(shù)或功能塊所處的函數(shù)庫,就可以在你的工程中隨處使用這些資源了。我們可以在后面進(jìn)行控制算法組態(tài)時,隨時根據(jù)需要在庫管理器中添加或刪除函數(shù)庫。當(dāng)然,也可以在新建工程時,根據(jù)一般應(yīng)用情況,事先在庫管理器中添加好那些常用的功能塊/函數(shù)庫,如下頁:算法塊使用說明參見SmartPro系統(tǒng)使用手冊

新建工程的相關(guān)設(shè)置——添加函數(shù)庫認(rèn)識庫管理器第7講控制器算法組態(tài)14Hsac.lib

控制調(diào)節(jié)HSPID(PID調(diào)節(jié)器)HSAlgMAN(手操器)Hsaired.lib

信號選擇AI_RED(冗余信號選擇模塊)

模擬量量程轉(zhuǎn)換H_E(16進(jìn)制數(shù)據(jù)轉(zhuǎn)換為工程量數(shù)據(jù))H_RTD(16進(jìn)制數(shù)據(jù)轉(zhuǎn)換為熱電阻溫度數(shù)據(jù))H_TC(16進(jìn)制數(shù)據(jù)轉(zhuǎn)換為熱電偶溫度數(shù)據(jù))E_H(工程量/電量程數(shù)據(jù)轉(zhuǎn)換為16進(jìn)制數(shù)據(jù))Hscnvt.libHsctrol.lib

控制算法HSDEV(微分算法)HSINTG(積分)HSRS(RS觸發(fā)器)HSSOP(二階慣性)Hsdpext.libDP設(shè)備狀態(tài)檢測HSDPGetSlaveState(獲取DP從站的狀態(tài))HSGetFCUState(獲取一對控制器的狀態(tài))Hspower.lib電力行業(yè)專用HSMEDSEL(三取中)HSMILL(磨煤機(jī)控制)

新建工程的相關(guān)設(shè)置——添加函數(shù)庫常用常用常用第7講控制器算法組態(tài)15

soe功能專用HSsoeRead(讀取SOE的數(shù)據(jù)記錄)Hssoe.libMacsctrol.lib

控制算法HSACCUM(積算算法)HSALM_AM(幅值報警)HSALM_DV(偏差報警)HSCHARC(折線函數(shù))HSCMP(多重比較器)HSCSLAVE(組合伺服放大)HSFOP(一階慣性)HSLIM_HL(幅值限制)HSFUZZY(模糊控制)HSSCS(順控設(shè)備)HSTIMER(定時器)HSVALVE(調(diào)節(jié)門)Standard.lib標(biāo)準(zhǔn)庫RS(RS觸發(fā)器)TON(延時置位型定時器)TP(定寬脈沖型定時器)Hspower2.lib電力行業(yè)專用HSCOMBUSTION(燃燒控制)HSALARMSPARK(報警閃光)HSBAL2(雙平衡模塊)HSDLCTRL(斷路器)HSSTREAMRM(主汽溫度模糊控制)

新建工程的相關(guān)設(shè)置——添加函數(shù)庫

系統(tǒng)庫GET_TASK_INFO(獲取系統(tǒng)任務(wù)信息)SysLib.lib常用常用第7講控制器算法組態(tài)16第7講控制器算法組態(tài)第三節(jié)硬件配置添加硬件硬件屬性設(shè)置171.硬件配置控制器算法組態(tài)軟件的主要作用是對生產(chǎn)現(xiàn)場來的信號進(jìn)行運(yùn)算處理,將最終產(chǎn)生的運(yùn)算結(jié)果作為控制指令輸出到現(xiàn)場的執(zhí)行機(jī)構(gòu)驅(qū)使其動作。為此就需要在軟件中定義負(fù)責(zé)采集或輸出這些現(xiàn)場信號的硬件模塊(即硬件配置),并為模塊的每個數(shù)據(jù)通道分配標(biāo)志符(即數(shù)據(jù)庫定義)。這樣就明確了運(yùn)算所處理的數(shù)據(jù)是現(xiàn)場的哪個信號。添加DP主站卡設(shè)置DP主站卡的屬性

添加DP從站(各I/O模塊)設(shè)置DP從站的屬性

硬件配置的內(nèi)容申明:在開始用控制器算法組態(tài)軟件進(jìn)行設(shè)備組態(tài)之前,我們需要按照測點(diǎn)清單中的測點(diǎn)類型和測點(diǎn)數(shù)量,合理地配置所需的I/O模塊型號和數(shù)量,繪制出現(xiàn)場控制站的硬件配置圖。然后才能按照圖紙?zhí)砑佑布O(shè)備并設(shè)置其屬性參數(shù)。第7講控制器算法組態(tài)181.硬件配置雙擊左側(cè)“資源”對象組織器中的“配置”,右側(cè)編輯區(qū)中便打開硬件配置的操作窗口。第7講控制器算法組態(tài)192.硬件屬性配置設(shè)置DP從站(I/O模塊)的屬性I/O模塊有如下四種屬性需要設(shè)置:地址的調(diào)整回讀區(qū)的設(shè)置通道增益的修改第7講控制器算法組態(tài)202.硬件屬性配置設(shè)置I/O模塊屬性——地址的調(diào)整【Baseparatemeters】輸入地址:第一個模塊的為%IB0。檢查第一個IO模塊的輸入地址,建議從IW0開始。在添加模塊時,如果是嚴(yán)格按照模塊的站地址號從低往高的順序添加,則第一個I/O模塊的輸入地址默認(rèn)是正確的;但如果添加模塊時使用了插入命令,則不能保持地址的連續(xù)性。這就是追加模塊和插入模塊的區(qū)別。第7講控制器算法組態(tài)212.硬件屬性配置設(shè)置I/O模塊屬性——地址的調(diào)整【DPparatemeters】站地址:即模塊設(shè)備號,模塊的站地址應(yīng)與其安裝底座上的撥碼開關(guān)值嚴(yán)格對應(yīng)。第7講控制器算法組態(tài)222.硬件屬性配置設(shè)置I/O模塊屬性——回讀區(qū)設(shè)置【Input/Output】:將左側(cè)的兩項(xiàng)都“選擇”到右邊窗口種中。模擬量輸出模塊、開關(guān)量輸出模塊需要設(shè)置Input/Output屬性,其它模塊的Input/Output屬性采用默認(rèn)設(shè)置。

FM151FM171第7講控制器算法組態(tài)232.硬件屬性配置設(shè)置I/O模塊屬性——通道增益的修改【UserParameter】:選中“Bytex”行“Value”列的數(shù)字,單擊它便可處于編輯狀態(tài),輸入要修改的數(shù)字,在旁邊空白處點(diǎn)左鍵表示確認(rèn)修改,最后按下“確定”鍵關(guān)閉。每個模塊都應(yīng)檢查并修改這項(xiàng)屬性,尤其是模擬量采集模塊。為使系統(tǒng)能精確地處理每個通道的信號,就需要明確各通道接線的信號類型和信號范圍。為此,軟件系統(tǒng)給每個模塊都分配了若干參數(shù)(Parameter)存儲區(qū),這些區(qū)域都以字節(jié)為單位劃分。不同型號的模塊,所需的字節(jié)數(shù)量不同,各個字節(jié)的含義也有不同的定義。以下介紹幾種常用的不同型號模塊的字節(jié)參數(shù)定義原則及其設(shè)置方法?!霸鲆妗奔捶糯蟊稊?shù),每個模擬量通道都應(yīng)準(zhǔn)確設(shè)置其增益,否則按照默認(rèn)參數(shù)處理后的信號值是不正確的。增益與接線信號的信號類型和信號范圍相關(guān)。第7講控制器算法組態(tài)24Value列填寫十進(jìn)制數(shù),該數(shù)由二進(jìn)制數(shù)換算得到。2.硬件屬性配置設(shè)置I/O模塊屬性——通道增益的修改FM148AFM148A的參數(shù)共有19個字節(jié)(Byte0~Byte18)Byte0:規(guī)定為1,采用默認(rèn)值不需修改。Byte1:每兩個Bit位表示一個通道的信號類型,電壓信號描述為“00”,電流信號描述為“01”。該字節(jié)從其低位到高位,依次對應(yīng)通道1、2、3、4的信號類型。(注:1個Byte=8個Bit位)Byte2:通Byte1,從低位到高位,依次對應(yīng)通道5、6、7、8的信號類型。Byte3:通道1的增益(放大倍數(shù))。Byte4:通道1的增益的高位字節(jié),保持默認(rèn)值不需設(shè)置。Byte5:通道2的增益(放大倍數(shù))。Byte6:通道2的增益的高位字節(jié),保持默認(rèn)值不需設(shè)置。Byte17:通道8的增益(放大倍數(shù))。Byte18:通道8的增益的高位字節(jié),保持默認(rèn)值不需設(shè)置?!?講控制器算法組態(tài)252.硬件屬性配置設(shè)置I/O模塊屬性——通道增益的修改FM148A參數(shù)設(shè)置舉例FM148A假設(shè)某FM148A模塊的通道1、2、3、7、8是4~20mA信號,通道4、5、6是0~10V信號。Byte1=00010101=16+4+1=21(通道1、2、3為電流型,通道4為電壓型)Byte2=01010000=64+16=80(通道5、6為電壓型,通道7、8為電流型)Byte3=Byte5=Byte7=Byte15=Byte17=4(通道1、2、3、7、8為0~20mA)Byte9=Byte11=Byte13=1(通道4、5、6為0~10V)第7講控制器算法組態(tài)262.硬件屬性配置設(shè)置I/O模塊屬性——通道增益的修改FM148RFM148R的參數(shù)共有1個字節(jié)(Byte0)Byte0:每1個Bit位表示一個通道的信號類型,電壓信號描述為“0”,電流信號描述為“1”。該字節(jié)從其低位到高位,依次對應(yīng)通道1、2、3、4、5、6、7、8的信號類型。FM148R模塊是冗余信號采集模塊,需成對使用,安裝在FM133(電流型底座)或FM134(電壓型底座)上。所以模塊的Byte0可能有兩種取值:0或255。第7講控制器算法組態(tài)272.硬件屬性配置設(shè)置I/O模塊屬性——通道增益的修改FM143FM143的參數(shù)共有19個字節(jié)(Byte0~Byte18)Byte0:規(guī)定為1,采用默認(rèn)值不需修改。Byte1:每兩個Bit位表示一個通道的信號類型,電壓信號描述為“00”,電流信號描述為“01”。該字節(jié)從其低位到高位,依次對應(yīng)通道1、2、3、4的信號類型。因?yàn)橹荒苁请妷盒?,所以該字?jié)值恒等于0,采用默認(rèn)值不需修改。Byte2:通Byte1,通道5、6、7、8的信號類型。恒等于0,采用默認(rèn)值不需修改。Byte3:通道1的增益(放大倍數(shù)),根據(jù)熱電阻的分度號和溫度信號的量程范圍。Byte4:通道1的增益的高位字節(jié),保持默認(rèn)值不需設(shè)置。Byte5:通道2的增益(放大倍數(shù))。Byte6:通道2的增益的高位字節(jié),保持默認(rèn)值不需設(shè)置。Byte17:通道8的增益(放大倍數(shù))。Byte18:通道8的增益的高位字節(jié),保持默認(rèn)值不需設(shè)置?!?講控制器算法組態(tài)282.硬件屬性配置設(shè)置I/O模塊屬性——通道增益的修改FM147AFM147A的參數(shù)共有19個字節(jié)(Byte0~Byte18)Byte0:規(guī)定為1,采用默認(rèn)值不需修改。Byte1:通道1、2、3、4的信號類型。00電壓,01電流;只能是電壓型,所以該字節(jié)值恒等于0。Byte2:通Byte1,通道5、6、7、8的信號類型。恒等于0。Byte3:通道1的放大倍數(shù),根據(jù)熱電偶的分度號和溫度信號的量程范圍。Byte4:通道1增益的高位字節(jié),保持默認(rèn)值不需設(shè)置。Byte5:通道2的放大倍數(shù)。Byte6:通道2增益的高位字節(jié),保持默認(rèn)值不需設(shè)置。Byte17:通道8的放大倍數(shù)。Byte18:通道8增益的高位字節(jié),保持默認(rèn)值不需設(shè)置?!?講控制器算法組態(tài)292.硬件屬性配置FM151FM151的參數(shù)共有26個字節(jié)(Byte0~Byte25)Byte0:規(guī)定為1,采用默認(rèn)值不需修改。Byte1:通道1的放大倍數(shù)。1:0~5V,50:0~20mA,56:4~20mA,57:0~24mAByte2:通Byte1,通道2的放大倍數(shù)。Byte3:通道3的放大倍數(shù)。Byte8:通道8的放大倍數(shù)。Byte9:當(dāng)主站讓從站處于故障安全狀態(tài)時,從站8個通道的處理方式:某位為0,則該位對應(yīng)的通道在故障安全狀態(tài)時輸出保持不變;為1,則輸出故障安全預(yù)定值。一般輸出模塊考慮這種情況,F(xiàn)M152和FM171也有相應(yīng)功能的參數(shù)。Byte10:通道1的故障安全預(yù)定值的低字節(jié)。如果故障預(yù)定值大于255,就需要用到相應(yīng)的高字節(jié)Byte11。如果Byte9中的第1個Bit位設(shè)為0(當(dāng)通道1故障時輸出保持,而不采用故障預(yù)定值),則不需要考慮Byte10和Byte11的設(shè)置。Byte11:通道1的故障安全預(yù)定值的高字節(jié)?!瑽yte24:通道8的故障安全預(yù)定值的低字節(jié)。Byte25:通道8的故障安全預(yù)定值的高字節(jié)。……第7講控制器算法組態(tài)302.硬件屬性配置FM152FM152的參數(shù)共有20個字節(jié)(Byte0~Byte19)Byte0:規(guī)定為1,采用默認(rèn)值不需修改。Byte1:通道1的放大倍數(shù)。1:0~5V,50:0~20mA,56:4~20mA,57:0~24mAByte2:通Byte1,通道2的放大倍數(shù)。Byte6:通道6的放大倍數(shù)。Byte7:當(dāng)主站讓從站處于故障安全狀態(tài)時,從站6個通道的處理方式:某位為0,則該位對應(yīng)的通道在故障安全狀態(tài)時輸出保持不變;為1,則輸出故障安全預(yù)定值。Byte8:通道1的故障安全預(yù)定值的低字節(jié)。如果故障預(yù)定值大于255,就需要用到相應(yīng)的高字節(jié)Byte9。如果Byte7中的第1個Bit位設(shè)為0(當(dāng)通道1故障時輸出保持,而不采用故障預(yù)定值),則不需要考慮Byte8和Byte9的設(shè)置。Byte9:通道1的故障安全預(yù)定值的高字節(jié)。Byte18:通道6的故障安全預(yù)定值的低字節(jié)。Byte19:通道6的故障安全預(yù)定值的高字節(jié)?!?講控制器算法組態(tài)312.硬件屬性配置FM161FM161的參數(shù)共有2個字節(jié):Byte0規(guī)定為1;Byte1默認(rèn)為0不需修改。第7講控制器算法組態(tài)322.硬件屬性配置FM171各字節(jié)的作用規(guī)定見P65或P461FM171FM171的參數(shù)共有5個字節(jié)Byte0:規(guī)定為1,采用默認(rèn)值不需修改。Byte1:當(dāng)主站讓從站處于故障安全狀態(tài)時,從站通道1~通道8的處理方式:某位為0,則該位對應(yīng)的通道在故障安全狀態(tài)時輸出保持不變;為1,則輸出故障安全預(yù)定值。Byte2:當(dāng)主站讓從站處于故障安全狀態(tài)時,從站通道9~通道16的處理方式Byte3:通道1~8的故障安全預(yù)定值。如果Byte1中的第1個Bit位設(shè)為0(當(dāng)通道1故障時輸出保持,而不采用故障預(yù)定值),則不需要考慮Byte3第1個Bit位的設(shè)置。Byte4:通Byte3,通道9~16的故障安全預(yù)定值。通道9~16的故障安全預(yù)定值。第7講控制器算法組態(tài)33第7講控制器算法組態(tài)第四節(jié)數(shù)據(jù)庫定義數(shù)據(jù)庫定義概述AI、AO點(diǎn)的定義DI、DO點(diǎn)的定義341數(shù)據(jù)庫定義概述數(shù)據(jù)庫定義與硬件配置是緊密相關(guān)的。硬件配置完成后,控制器算法組態(tài)軟件按照已添加各模塊的通道數(shù)量和通道的數(shù)據(jù)類型(模擬量/開關(guān)量),會自動地為每個模塊分配好固定的數(shù)據(jù)存放地址,以便存取其各通道的值。這時,我們就可以定義為每個通道所分配的地址中存放的數(shù)據(jù)的名稱和數(shù)據(jù)類型了,這個過程叫數(shù)據(jù)庫定義。對于數(shù)據(jù)庫點(diǎn),需要把它們定義在“全局變量”表中。第7講控制器算法組態(tài)352AI、AO點(diǎn)的定義注意:點(diǎn)的命名規(guī)則!使用字母、數(shù)字、下劃線的組合,以字母或下劃線開頭,不能有空格,不能使用漢字和其它特殊字符。因?yàn)槟M量點(diǎn)的類型WORD不是最終的常用數(shù)據(jù)類型(最終常用類型是REAL型),所以可以把測點(diǎn)清單中的點(diǎn)名留給REAL型數(shù)據(jù)用,而在前面加下劃線作為數(shù)據(jù)庫點(diǎn)名。這也是數(shù)據(jù)導(dǎo)入工具的命名習(xí)慣。第7講控制器算法組態(tài)定義位置:在“資源”的“全局變量”表單中手動輸入完整的定義VAR_GLOBALRETAINEND_VARAI點(diǎn)名

AT

%IB字節(jié)號:數(shù)據(jù)類型;(*點(diǎn)說明*)AO點(diǎn)名

AT

%QB字節(jié)號:數(shù)據(jù)類型;(*點(diǎn)說明*)定義格式%:地址提示符I:表示為輸入點(diǎn);Q:表示為輸出點(diǎn)B:表示該變量值占用兩個字節(jié)(Byte)字節(jié)號:從MACS配置中查得(字即WORD)乘以2后得出的數(shù)。一個WORD為兩個Byte。數(shù)據(jù)類型:模擬量都為字型,寫WORD把變量定義為全局變量時的關(guān)鍵字。變量定義部分應(yīng)置于這對關(guān)鍵字中間的行中。362DI、DO點(diǎn)的定義定義位置:在“資源”的“全局變量”表單中手動輸入完整的定義VAR_GLOBALRETAINEND_VARDI點(diǎn)名

AT

%IX字號.位號:數(shù)據(jù)類型;(*點(diǎn)說明*)DO點(diǎn)名

AT

%QX字號.位號:數(shù)據(jù)類型;(*點(diǎn)說明*)定義格式%:地址提示符I:表示為輸入點(diǎn);Q:表示為輸出點(diǎn)X:表示該變量值占用一個二進(jìn)制位(Bit)字號:從MACS配置中查得(字即WORD)位號:通道號減1,由0起始數(shù)據(jù)類型:開關(guān)量都為布爾型,寫B(tài)OOL把變量定義為全局變量時的關(guān)鍵字。變量定義部分應(yīng)置于這對關(guān)鍵字中間的行中。第7講控制器算法組態(tài)372DI、DO點(diǎn)的定義定義DI點(diǎn)第7講控制器算法組態(tài)382DI、DO點(diǎn)的定義定義DO點(diǎn)DO點(diǎn)定義舉例-1在MACS配置中,展開FM171模塊的所有子目錄,如下圖:已經(jīng)將輸出區(qū)的第21個字(1WORD=16Bit)分配給該模塊,以存放模塊16個輸出通道的值,每個通道值占用這個字的1位,且低通道占低位,高通道占高位,正好16通道占滿16位。故模塊的16個通道點(diǎn)應(yīng)該定義在地址“%QW21”中。由地址“%IW78”可知:已將輸入?yún)^(qū)的第78個字預(yù)留給該FM171的16個通道,以存放這16個通道的回讀值。所以這個地址不是給模塊的16個輸出數(shù)據(jù)用的。第7講控制器算法組態(tài)392DI、DO點(diǎn)的定義定義DO點(diǎn)DO點(diǎn)定義舉例-2第7講控制器算法組態(tài)40第7講控制器算法組態(tài)第五節(jié)模擬量的量程轉(zhuǎn)換量程轉(zhuǎn)換概述電流/電壓模入信號的轉(zhuǎn)換熱電阻模入信號的轉(zhuǎn)換熱電偶模入信號的轉(zhuǎn)換模出信號的轉(zhuǎn)換冗余模入信號的選擇411量程轉(zhuǎn)換概述由“數(shù)據(jù)庫定義”一講可知,AI、AO數(shù)據(jù)庫點(diǎn)的數(shù)據(jù)類型都是WORD型(十六位二進(jìn)制數(shù)),不能直接參與控制運(yùn)算或送到操作員站去顯示,要想使用,必須先經(jīng)過“量程轉(zhuǎn)換運(yùn)算”,從數(shù)字量轉(zhuǎn)換為工程量(REAL型)。

常用的量程轉(zhuǎn)換功能塊H_E—將16位二進(jìn)制數(shù)轉(zhuǎn)換為工程量。電流/電壓型模入點(diǎn)使用(即FM148A、FM148R模塊采集的點(diǎn))H_RTD—將16位二進(jìn)制數(shù)轉(zhuǎn)換為熱電阻溫度數(shù)據(jù),熱電阻模入點(diǎn)使用(即FM143模塊采集的點(diǎn))H_TC—將16位二進(jìn)制數(shù)轉(zhuǎn)換為熱電偶溫度數(shù)據(jù),熱電偶模入點(diǎn)使用(即FM147A模塊采集的點(diǎn))H_CT—熱電偶冷端補(bǔ)償點(diǎn)專用的轉(zhuǎn)換功能塊E_H—將工程量轉(zhuǎn)換為16位二進(jìn)制數(shù),電流型模出點(diǎn)使用(即FM151A、FM152模塊輸出的點(diǎn))量程轉(zhuǎn)換功能塊都存放在函數(shù)庫“hscnvt.lib”中。第7講控制器算法組態(tài)421量程轉(zhuǎn)換概述第7講控制器算法組態(tài)432電流/電壓模入信號的轉(zhuǎn)換FM148A、FM148R模塊采集的電流、電壓信號都使用“H_E”功能塊實(shí)現(xiàn)轉(zhuǎn)換。將WORD型數(shù)據(jù)庫點(diǎn)轉(zhuǎn)換為REAL型就可以參與后續(xù)控制運(yùn)算了。數(shù)據(jù)庫定義:_AFI_JWS2的數(shù)據(jù)庫定義,類型WORD轉(zhuǎn)換程序:用H_E將WORD(_AFI_JWS2)轉(zhuǎn)換為REAL(AFI_JWS2)流量累計算法程序:用HSACCUM對REAL型變量AFI_JWS2進(jìn)行周期性累計,得到累計結(jié)果A_FIJWS2,該結(jié)果將上傳到操作員站監(jiān)視。HSACCUM只能對REAL型變量進(jìn)行累計,所以連接的必須是量程轉(zhuǎn)換的結(jié)果AFI_JWS2。功能塊實(shí)例“_AFI_JWS2_”的聲明第7講控制器算法組態(tài)443熱電阻模入信號的轉(zhuǎn)換FM143A、FM143模塊采集的熱電阻信號都使用“H_RTD”功能塊實(shí)現(xiàn)轉(zhuǎn)換。用H_RTD將WORD(_ATI_CYQ)轉(zhuǎn)換為REAL(ATI_CYQ)_ATI_CYQ的數(shù)據(jù)庫定義,類型WORD功能塊實(shí)例“_ATI_CYQ_”的聲明第7講控制器算法組態(tài)454熱電偶模入信號的轉(zhuǎn)換FM147A模塊采集的熱電偶信號都使用“H_TC”功能塊實(shí)現(xiàn)轉(zhuǎn)換。_ATI_JW2IN的數(shù)據(jù)庫定義,類型WORD功能塊實(shí)例“_ATI_CYQ_”、“_COLD10_”的聲明用H_TC將WORD(_ATI_JW2IN)轉(zhuǎn)換為REAL(ATI_JW2IN)用H_CT將WORD(_COLD10)轉(zhuǎn)換為REAL(COLD10)用冷端點(diǎn)的轉(zhuǎn)換結(jié)果(REAL型)補(bǔ)償熱電偶溫度,ATI_JW2IN是轉(zhuǎn)換并補(bǔ)償后的點(diǎn)第7講控制器算法組態(tài)46功能塊實(shí)例“_AVC_JW2_”的聲明5模出信號的轉(zhuǎn)換FM151A、FM152模塊輸出的電流信號都使用“E_H”功能塊實(shí)現(xiàn)轉(zhuǎn)換。用E_H將REAL(AVC_JW2)轉(zhuǎn)換為WORD,轉(zhuǎn)換結(jié)果同時賦值給_AVC_JW2和_AVC_JW2_1_AVC_JW2、_AVC_JW2_1的數(shù)據(jù)庫定義,類型WORD對ATI_ZQ進(jìn)行PID調(diào)節(jié),將計算結(jié)果賦值給AVC_JW2(REAL)。AVC_JW2即為控制閥門開度的工程量。第7講控制器算法組態(tài)476冗余模入信號的選擇AO信號的冗余處理由硬件模塊實(shí)現(xiàn);AI信號的冗余處理由軟件程序?qū)崿F(xiàn)。對于一個由一對冗余模入模塊采集的通道點(diǎn),在算法中先分別用H_E轉(zhuǎn)換為REAL型,然后使用“AI_RED”功能塊檢測兩個冗余模塊的工作狀態(tài),最終以工作正常的模塊的采集數(shù)據(jù)作為實(shí)際使用的數(shù)據(jù)?!癆I_RED”存放在函數(shù)庫“Hsaired.lib”中。

第7講控制器算法組態(tài)486冗余模入信號的選擇_ALI_CYQ、_ALI_CYQ_1的數(shù)據(jù)庫定義,類型WORD用H_E將WORD(_ALI_CYQ和_ALI_CYQ_1)分別轉(zhuǎn)換為REAL后,送到冗余信號選擇功能塊AI_RED的輸入端作為被選擇信號。AI_RED的內(nèi)部程序會判斷兩個點(diǎn)所處的模塊(2號和3號)哪個正常工作,將正常模塊采集上來的相應(yīng)信號選擇輸出到O1項(xiàng)上,后續(xù)對除氧器水位信號的判斷處理都將采用“rALI_CYQ.O1”

。站地址=2站地址=3選擇結(jié)果(REAL)第7講控制器算法組態(tài)49第7講控制器算法組態(tài)第六節(jié)變量和POU介紹變量分類訪問變量POU概述POU分類POU觸發(fā)POU語言501變量控制運(yùn)算的主要操作對象是數(shù)據(jù),這些數(shù)據(jù)的值一般都是實(shí)時變化的,我們把這些變化的數(shù)據(jù)叫做變量。或者說,變量就是計算機(jī)中數(shù)據(jù)存儲單元的標(biāo)識??刂扑惴ńM態(tài)中所用到的變量的名稱和數(shù)據(jù)類型必須是事先明確的,這就需要我們首先對用到的變量進(jìn)行定義,這個定義過程叫做變量聲明。每個變量都必須聲明,這節(jié)將著重介紹變量的基本聲明格式、以及不同類型變量的具體聲明方法。為了在數(shù)據(jù)運(yùn)算過程中使用/標(biāo)識這些變量,每個變量都需要有一個名字,即變量名。變量的命名規(guī)范:

變量的命名使用字母、數(shù)字和下劃線的組合,以字母或下劃線開頭,不能以數(shù)字開頭;不能使用空格、中文字符和其它特殊字符,不能有‘-’號;不能使用系統(tǒng)的保留字;長度盡量短;不能重名;

第7講控制器算法組態(tài)511變量

變量的數(shù)據(jù)類型每個變量都有明確的數(shù)據(jù)類型,軟件支持多種數(shù)據(jù)類型存儲方式。常用的數(shù)據(jù)類型如:布爾型(BOOL)、整形(INT、BYTE、WORD等等)、實(shí)數(shù)型(REAL、LREAL)、字符串型(STRING)、時間型(TIME)……其它數(shù)據(jù)類型如:時間日期型、日期時間型、日期型,自定義的一維、二維和三維數(shù)組,指針型,枚舉型,結(jié)構(gòu)型等。第7講控制器算法組態(tài)52每個變量都需事先聲明(定義)才能使用。變量聲明應(yīng)考慮以下幾個方面:1變量

聲明變量變量聲明的位置變量聲明的格式變量名變量的數(shù)據(jù)類型第7講控制器算法組態(tài)531變量

聲明變量

變量聲明的位置POU的聲明區(qū)資源的某個全局變量表中POU聲明區(qū),定義在關(guān)鍵字VAR和END_VAR中間的都為局部變量第7講控制器算法組態(tài)541變量

聲明變量

變量聲明的格式變量名:數(shù)據(jù)類型:=初始化值;(*文字說明*)——適用于系統(tǒng)內(nèi)部點(diǎn)的聲明點(diǎn)名AT%I(Q)B(X)字號:位號:數(shù)據(jù)類型:=初始值;(*文字說明*)——適用于I/O點(diǎn)的聲明注意:后一種格式并不陌生,是第4節(jié)數(shù)據(jù)庫I/O點(diǎn)的定義。第7講控制器算法組態(tài)551變量分類

可從以下四個角度劃分變量按照變量結(jié)構(gòu)形式的不同,分為簡單型變量和功能塊實(shí)例按照變量有效范圍(使用范圍)的不同,分為全局變量和局部變量按照屬性分為:中間變量、輸入型變量、輸出型變量、輸入輸出型變量、全局變量按照變量能否掉電保護(hù),分為保留型和非保留型變量第7講控制器算法組態(tài)561變量分類

變量的形式從結(jié)構(gòu)形式劃分,有簡單型變量和功能塊實(shí)例兩種。

簡單型變量簡單型變量簡單型變量指單一的變化量,能被賦予一個明確的數(shù)值。一個簡單型變量僅代表一個意義。簡單型變量的聲明格式:簡單型變量名稱:數(shù)據(jù)類型:=常數(shù);(*點(diǎn)說明*)例如:AM01:REAL:=50.0;(*模擬變量01*)

DM01:BOOL:=FALSE;或DM01:BOOL:=TRUE;(*開關(guān)變量01*)

AM02:INT:=2;(*整形變量02*)

NAME01:STRING:=’TASK10’;(*字符串變量01*)

T01:TIME:=T#1s500ms;(*時間變量01*)以上是變量聲明的完整格式。如果不需要對變量賦初始化值,可去掉其中的賦初值部分“:=常數(shù)”。即為:

簡單型變量名稱:數(shù)據(jù)類型;(*點(diǎn)說明*)例如:AM01:REAL;(*模擬變量01*)第7講控制器算法組態(tài)571變量分類

變量的形式

功能塊實(shí)例簡單型變量僅是一個變化量,而一個“功能塊實(shí)例”則由一組特定的變量組成。具體是怎樣的一組特定變量,則取決于該功能塊實(shí)例的功能塊類型。所以功能塊實(shí)例接近于數(shù)據(jù)結(jié)構(gòu)的概念。功能塊實(shí)例的聲明格式如下:功能塊實(shí)例名:功能塊類型:=(項(xiàng)名1:=常數(shù),項(xiàng)名2:=常數(shù),…,項(xiàng)名n:=常數(shù));(*功能塊實(shí)例說明*)PID_LIC_1002:HSPID:=(PT:=100,TI:=30,SV:=100,KD:=5,TD:=0,DI:=0,OT:=100,OB:=0,OU:=1,DL:=10,MU:=100,MD:=0,PK:=0,OM:=0,AD:=0,TM:=TRUE,RM:=0,ME:=TRUE,AE:=TRUE,CE:=FALSE,TE:=TRUE,FE:=TRUE,AV:=0,PU:=3300,PD:=0,MC:=0,CP:=0.5);(*流量1002信號的PID調(diào)節(jié)器*)以上是功能塊實(shí)例聲明的完整格式;如果功能塊實(shí)例中的項(xiàng)都不需要初始化賦值,則可去掉其中的項(xiàng)賦初值部分,即為:功能塊實(shí)例名:功能塊類型;(*功能塊實(shí)例說明*)例如:TIMER01:TP;(*定寬脈沖型定時器TIMER01*)第7講控制器算法組態(tài)581變量分類

變量的有效范圍

全局變量按照變量的使用有效范圍劃分,有全局變量和局部變量有效范圍:整個工程有效定義位置:資源/全局變量/某個表單中定義關(guān)鍵字:VAR_GLOBALEND_VAR

將變量申明置于上述關(guān)鍵字中間行。例如:

VAR_GLOBAL

AM01:REAL:=50.0;END_VAR

則AM01為一個全局變量第7講控制器算法組態(tài)591變量分類

變量的有效范圍

局部變量有效范圍:僅在定義該變量的POU內(nèi)部有效定義位置:POU的聲明區(qū)(即上半編輯窗口中)定義關(guān)鍵字:VAREND_VAR

將變量申明置于上述關(guān)鍵字中間行。例如:

VAR

DM01:BOOL;END_VAR

則DM01為一個局部變量POU聲明區(qū),定義在關(guān)鍵字VAR和END_VAR中間的都為局部變量第7講控制器算法組態(tài)601變量分類

變量的屬性按照變量屬性劃分,有輸入型變量、輸出型變量、輸入輸出型變量、中間變量、全局變量。VAR_INPUT:輸入型變量。對某功能塊而言只能讀,不能寫!主要在功能塊型或函數(shù)型POU中應(yīng)用。VAR_OUTPUT:輸出型變量。對某功能塊而言只能寫,不能讀!主要在功能塊型POU中應(yīng)用。VAR_IN_OUT:輸入輸出型??勺x可寫!主要在功能塊型POU中應(yīng)用。VAR:中間變量??勺x可寫!只在聲明它的POU中有效。VAR_GLOBAL:全局變量。在整個工程中有效。第7講控制器算法組態(tài)611變量分類

保留型變量保留型變量的聲明格式如下:VAR_GLOBALRETAINAM01:REAL:=50.0;END_VAR或VARRETAINDM01:BOOL;END_VAR

對于系統(tǒng)中那些需要掉電保護(hù)和數(shù)據(jù)備份的重要數(shù)據(jù),我們都用關(guān)鍵字“RETAIN”來定義它們,經(jīng)過這樣定義的變量叫做保留型變量。第7講控制器算法組態(tài)621訪問變量“訪問”即“使用”,運(yùn)算過程中對變量的訪問包括:讀取變量值和給變量賦值。訪問一個簡單型變量,直接寫它的變量名即可。如:AM01:=AM02+AM03;這個例子表示:讀取變量AM02和AM03的值,將二者相加,并將加的結(jié)果賦值給變量AM01。訪問一個功能塊實(shí)例的項(xiàng),書寫格式為:功能塊變量名.項(xiàng)名如:PID01.SP(取PID01的設(shè)定值項(xiàng),前提已經(jīng)聲明了PID01的類型為HSPID)強(qiáng)調(diào):在程序中使用變量時一定要注意數(shù)據(jù)類型前后一致!即一個信號連線兩端的變量的數(shù)據(jù)類型應(yīng)嚴(yán)格相同!第7講控制器算法組態(tài)632POU概述POU即程序組織單元(ProgramOrganizationUnit),是控制器算法組態(tài)軟件作為控制軟件的核心部分??刂扑惴ńM態(tài)的過程就是按照設(shè)計好的控制方案,創(chuàng)建解決問題所需的一系列POU,在POU中編寫相應(yīng)的控制運(yùn)算回路。POU的上半窗口為POU聲明區(qū)。一是聲明POU的類型和名稱,二是聲明POU內(nèi)的局部變量。POU的下半窗口為POU編程區(qū),體現(xiàn)POU所采用的編程語言,在其中編寫運(yùn)算程序。第7講控制器算法組態(tài)642POU概述Programprog名Function_BlockFB名FunctionFUN名局部變量接口變量指令說明部分代碼部分END_PROGRAMEND_FUNCTION_BLOCKEND_FUNCTION第7講控制器算法組態(tài)652POU分類POU分為如下三類:變量類型PROGRAMFBFUNVAR可以可以可以VAR_INPUT可以可以可以VAR_OUTPUT可以可以不可以VAR_GLOBAL可以不可以不可以RETAIN可以不可以不可以Program:程序型。最常用的POU類型。定義程序的關(guān)鍵字:PROGRANM

程序名Function_Block:功能塊型??梢再x予參數(shù)并具有靜態(tài)參數(shù)(帶有記憶)的POU。當(dāng)以相同輸入?yún)?shù)調(diào)用時,FB的輸出值取決于其內(nèi)部變量和外部變量的狀態(tài),這些變量在功能塊的這一次執(zhí)行到下一次執(zhí)行的過程中是保持不變的。定義功能塊的關(guān)鍵字:FUNCTION_BLOCK

功能塊名Function:函數(shù)型??梢再x予參數(shù)但沒有靜態(tài)參數(shù)。當(dāng)以相同輸入?yún)?shù)調(diào)用時,它總生成相同的結(jié)果作為其輸出。定義函數(shù)的關(guān)鍵字:FUNCTION

函數(shù)名:數(shù)據(jù)類型

第7講控制器算法組態(tài)662POU觸發(fā)在完成硬件配置、數(shù)據(jù)庫定義和模擬量量程轉(zhuǎn)換后,我們就可以創(chuàng)建解決問題所需的POU了。任何一個POU只有經(jīng)過觸發(fā)才能夠開始運(yùn)算。有兩種方式觸發(fā)POU:通過任務(wù)配置觸發(fā)POU通過POU調(diào)用的方法,用已被觸發(fā)的POU觸發(fā)其它POU實(shí)際工程中,用“任務(wù)配置”法周期性地觸發(fā)主程序“MACS_PRG”,再用“POU調(diào)用”法在主程序中調(diào)用其它POU使其運(yùn)算。

第7講控制器算法組態(tài)672POU觸發(fā)在主程序MACS_PRG中,添加程序調(diào)用的運(yùn)算語句。如果主程序用“ST”語言編寫,則在每行中分別輸入各個子程序的POU名稱即可,格式如“POU1();”

主程序調(diào)用子程序第7講控制器算法組態(tài)683算法組態(tài)避免除零、負(fù)數(shù)開方功能塊命名避免使用系統(tǒng)保留字減少點(diǎn)名長度指數(shù)、定時器避免使用系統(tǒng)自帶的庫!控制器算法組態(tài)具有豐富的控制算法庫(算術(shù)運(yùn)算函數(shù),緊急事件函數(shù),連續(xù)控制函數(shù),類型轉(zhuǎn)換函數(shù),文件操作函數(shù),定時器,計時器,觸發(fā)器函數(shù))。庫管理器分為4個區(qū)域,綁定在工程上的庫位于左上區(qū)域,左下區(qū)域顯示上面選中庫中的功能塊/函數(shù),右上區(qū)是選中功能塊/函數(shù)的聲明區(qū),右下區(qū)是功能塊/函數(shù)的外觀。在庫函數(shù)中給出了一些關(guān)于該函數(shù)的非常重要的信息:如該函數(shù)中有哪些輸入變量、輸出變量及中間變量,它們的數(shù)據(jù)類型,有哪些中間變量是必須賦初值的,變量的注釋等。使用一個功能塊/函數(shù)資源前可以查看庫管理器中的說明獲得更多信息。控制算法組態(tài)的核心:創(chuàng)建程序型POU,采用合適的POU語言(一般CFC或FBD)編寫它的運(yùn)算內(nèi)容,在編程時,對變量進(jìn)行數(shù)據(jù)讀、寫操作,用變量傳遞運(yùn)算結(jié)果,將某些變量值送到輸出模塊去作為控制現(xiàn)場設(shè)備動作的指令,或者不輸出變量而僅將變量值傳遞到上層操作員站監(jiān)控用。第7講控制器算法組態(tài)693POU語言POU語言即算法編程語言,控制器算法組態(tài)軟件共提供六種編程語言。其中前五種語言完全符合IEC61131-3國際標(biāo)準(zhǔn)。學(xué)習(xí)時要求重點(diǎn)掌握FBD、CFC,了解ST、LD。FBD(功能塊圖——FunctionBlockDiagram)LD(梯形圖-LadderDiagram)ST(結(jié)構(gòu)化文本-StructuredText)SFC(順序功能表圖-SequentialFunctionChart)IL(指令表-InstructionList)CFC(連續(xù)功能圖-ContinuousFunctionChart)

控制器算法組態(tài)軟件共提供六種編程語言第7講控制器算法組態(tài)703POU語言FBD(功能塊圖)和CFC(連續(xù)功能圖)面向圖形的編程語言,用圖形化的功能塊編制用于完成一定運(yùn)算或控制功能的程序。FBD語言編寫的程序由一系列“節(jié)”組成,每節(jié)都包含一段相對獨(dú)立的運(yùn)算回路,該運(yùn)算回路由功能塊、連線、輸入輸出端子組成,并規(guī)定了所有功能塊的調(diào)用順序和相應(yīng)模塊運(yùn)算所需的參數(shù)。CFC與FBD類似,只是CFC語言編寫的程序不劃分嚴(yán)格的區(qū)域,允許各運(yùn)算回路連續(xù)放置。運(yùn)算時按照功能塊順序運(yùn)行按【F2】功能鍵或【編輯】【提示輸入】可調(diào)出幫助管理器,提供運(yùn)算符列表第7講控制器算法組態(tài)713POU語言StandardFunctions標(biāo)準(zhǔn)函數(shù),來自庫函數(shù)中的函數(shù)UserdefinedFunctions用戶自定義函數(shù),用戶組態(tài)生成StandardFunctionBlocks標(biāo)準(zhǔn)功能塊,來自庫函數(shù)的功能塊UserdefinedFunctionBlocks用戶自定義功能塊,用戶組態(tài)生成FBDOperators標(biāo)準(zhǔn)IEC運(yùn)算符,由組態(tài)軟件控制器算法組態(tài)本身支持的運(yùn)算符StandardPrograms標(biāo)準(zhǔn)程序UserdefinedPrograms用戶自定義程序,用戶組態(tài)生成ConversionOperators轉(zhuǎn)換運(yùn)算符,用于不同類型變量之間進(jìn)行轉(zhuǎn)換FBD(功能塊圖)和CFC(連續(xù)功能圖)第7講控制器算法組態(tài)723POU語言LD(梯形圖)面向圖形的編程語言,一種專門用于基本邏輯控制的連續(xù)執(zhí)行語言,由觸點(diǎn)(常開,常閉,正傳感,負(fù)傳感,反轉(zhuǎn))、線圈(輸出,單穩(wěn)態(tài),鎖定,解鎖,跳轉(zhuǎn))、功能元件(定時器,計數(shù)器,步序器)等元素通過水平和垂直線連接起來的平面網(wǎng)狀圖。觸點(diǎn)、線圈可取反。很可能你想使用觸點(diǎn)開關(guān)來控制其它的POU,一方面,你可以使用線圈把結(jié)果放在全局變量中,這個全局變量可以用在其它的地方,你也可以在LD網(wǎng)絡(luò)中直接插入一個有使能端的POU,這種POU完全是正常的運(yùn)算符,函數(shù)或功能塊。它們有一個帶有EN標(biāo)志的額外輸入,EN輸入端總是BOOL型,意思是使能端EN為TRUE值時,POU被執(zhí)行。

第7講控制器算法組態(tài)733POU語言ST(結(jié)構(gòu)化文本)和高級語言(基于PASCAL)一樣,包含一系列指令,由一系列關(guān)鍵字(IF,WHILE,CASE,FOR,Repeat)和相應(yīng)操作指令完成.包括符號(關(guān)鍵字,運(yùn)算符,修飾符,操作數(shù)),語句(表達(dá)式,控制語句函數(shù)和功能塊等).ST語言中的表達(dá)式由運(yùn)算符和操作數(shù)組成(表達(dá)式是一個結(jié)構(gòu),它執(zhí)行后返回一個值)。優(yōu)先級列表和ST語言指令列表。

第7講控制器算法組態(tài)743POU語言SFC(順序功能圖)面向圖形的語言,用來連續(xù)控制/邏輯控制和輸入輸出監(jiān)視功能,以描述和控制過程事件順序操作,適合于需要多個狀態(tài)控制的事件.一個SFC由一系列操作步(STEP)和轉(zhuǎn)換(TRANSITION)組成,每個步包含一組影響過程的動作(ACTION).一些基本的概念:步,動作,轉(zhuǎn)換/轉(zhuǎn)換條件.對于簡化步,動作總是和步直接相關(guān),用鼠標(biāo)雙擊動作所屬的步,進(jìn)行編輯,右上角出現(xiàn)小三角形.入口動作(E)和出口動作(X).在步之間就是所說的轉(zhuǎn)換,轉(zhuǎn)換條件可以是邏輯變量,邏輯地址,邏輯常量,或是用ST語法實(shí)現(xiàn)的具有邏輯結(jié)果的一系列指令或者完全是由其它語言編程實(shí)現(xiàn).對于IEC步(包含條件和動作標(biāo)志),在對象管理器中選擇編輯的SFC程序,單擊鼠標(biāo)右鍵,用添加動作來編輯,這樣就可以賦給IEC步任意多個動作.用時這些動作也可以被多個步重復(fù)使用。

第7講控制器算法組態(tài)753POU語言IL(指令表)包含一系列指令,每條指令從新行開始,包含一個運(yùn)算符,具有豐富的變化,是最基本的計算機(jī)編程語言.操作數(shù)之間用逗號分隔,LD指令是各種運(yùn)算的基礎(chǔ),用于載入用于運(yùn)算的數(shù)值.ST指令用于保存運(yùn)算結(jié)果,IL支持比較運(yùn)EQ,GT,LT,GE,LE,NE

和跳轉(zhuǎn)(jumps).IL還支持兩種修飾符C,N,條件執(zhí)行和條件非執(zhí)行。

第7講控制器算法組態(tài)76第7講控制器算法組態(tài)第七節(jié)POU語言及其工程應(yīng)用信號處理的一般過程FBD語言應(yīng)用與模塊狀態(tài)檢測CFC語言應(yīng)用與流量累計CFC語言應(yīng)用與PID調(diào)節(jié)CFC語言應(yīng)用與SCS控制LD語言應(yīng)用控制算法組態(tài)概括771信號處理的一般過程進(jìn)行運(yùn)算處理以及輸出轉(zhuǎn)換、輸出信號到現(xiàn)場將AI信號(二進(jìn)制WORD)轉(zhuǎn)換為工程量(十進(jìn)制REAL),轉(zhuǎn)換結(jié)果提供給其他功能塊使用或顯示在人機(jī)界面上。第7講控制器算法組態(tài)781信號處理的一般過程第7講控制器算法組態(tài)791FBD語言應(yīng)用與模塊狀態(tài)檢測功能塊“HSDPGetSlaveState”用來獲取I/O模塊的運(yùn)行狀態(tài),存放在“hsdpext.lib”庫中。輸出端SlState是一個數(shù)據(jù)結(jié)構(gòu),包含三個參數(shù),其中我們關(guān)心的是bActive,表明設(shè)備是否存在,這是一個字節(jié)型變量,在程序中,我們將這個字節(jié)型的變量轉(zhuǎn)換為一個布爾型的變量:TRUE-設(shè)備正常運(yùn)行、FALSE-設(shè)備離線。

I/O模塊工作狀態(tài)檢測輸出項(xiàng)SlState的類型是數(shù)據(jù)結(jié)構(gòu)!注意項(xiàng)名區(qū)分大小寫!第7講控制器算法組態(tài)802CFC語言應(yīng)用與流量累計“HSACCUM”是積算功能塊,存放在“macsctrol.lib”庫中,常用作流量累計。

積算功能塊HSACCUM的輸出端AV的數(shù)據(jù)類型是LREAL型,控制器算法組態(tài)中LREAL占8個字節(jié),而上層FacView軟件中沒有占8字節(jié)空間的數(shù)據(jù)類型相對應(yīng)!所以要在控制器算法組態(tài)中將AV輸出由LREAL轉(zhuǎn)換為REAL型(占4個字節(jié)),才能上傳。第7講控制器算法組態(tài)812CFC語言應(yīng)用與流量累計HSACCUM功能塊的關(guān)鍵參數(shù):MC:=1.88888888888E-4(采樣周期為500ms)。I1(K)*MC的值應(yīng)為每周期內(nèi)的物料噸數(shù)。而I1(K)是單位小時內(nèi)的噸數(shù),所以靠I1(K)乘以系數(shù)MC來實(shí)現(xiàn)由“t/h”到“t/周期”的轉(zhuǎn)換。如果運(yùn)算周期是500ms,則MC=1/7200第7講控制器算法組態(tài)823CFC語言應(yīng)用與PID調(diào)節(jié)“HSPID”是工程常用的PID算法功能塊,存放在“hsac.lib”庫中。第7講控制器算法組態(tài)833CFC語言應(yīng)用與PID調(diào)節(jié)PID自動運(yùn)算的大致公式如下:PID功能塊需初始化幅值的項(xiàng)第7講控制器算法組態(tài)PT,TI,SV,KD,TD,DI,OT,OB,OU,DL,MU,MD,PK,OM,AD,TM,RM,ME,AE,CE,TE,FE,AV,PU,PD,MCMU、MD和OT、OB:PID輸出值A(chǔ)V的量程上限和下限和輸出限幅。串級主調(diào)的這幾項(xiàng)應(yīng)該與副調(diào)PV項(xiàng)的量程一致。PU、PD:過程輸入值PV的量程上限和下限AD:正、反作用方式MC:PID的作用類型,0-單PID,1-串級主調(diào),2-串級副調(diào)843CFC語言應(yīng)用與PID調(diào)節(jié)PID幾項(xiàng)輸入端的認(rèn)識RM(工作方式)TS(自動跟蹤開關(guān))TP(跟蹤量點(diǎn))IC(輸入補(bǔ)償)OC(輸出補(bǔ)償)TS為1時,PID進(jìn)入自動跟蹤方式,AV=TPPID處于自動跟蹤或手動跟蹤方式時,AV=TP有手動、自動、串級、手動/自動跟蹤幾種方式第7講控制器算法組態(tài)85

單調(diào)節(jié)回路組態(tài)第7講控制器算法組態(tài)863CFC語言應(yīng)用與PID調(diào)節(jié)

單調(diào)節(jié)回路組態(tài)MC:=0第7講控制器算法組態(tài)873CFC語言應(yīng)用與PID調(diào)節(jié)PID調(diào)節(jié)的相關(guān)變量聲明第7講控制器算法組態(tài)884CFC語言應(yīng)用與SCS控制“HSSCS”是工程常用的順控設(shè)備功能塊,存放在“MacsCtrol.lib”庫中,用來實(shí)現(xiàn)對電動機(jī)、電動門、電磁閥的啟/停(開/關(guān))控制。

HSSCS功能塊需初始化幅值的項(xiàng)RT,DE,SC,CM,OS,CS,OU三種設(shè)備的關(guān)鍵項(xiàng)的賦值:電動機(jī)時:DE:=0,SC:=FALSE;電動門時:DE:=1,SC:=TRUE;電磁閥時:DE:=2,SC:=FALSE.第7講控制器算法組態(tài)894CFC語言應(yīng)用與SCS控制

電動機(jī)控制組態(tài)第7講控制器算法組態(tài)904CFC語言應(yīng)用與SCS控制

電動機(jī)控制組態(tài)L4:開許可L5:關(guān)許可L6:開自動L7:關(guān)自動第7講控制器算法組態(tài)914CFC語言應(yīng)用與SCS控制

電動門控制組態(tài)第7講控制器算法組態(tài)924CFC語言應(yīng)用與SCS控制

電動門控制組態(tài)第7講控制器算法組態(tài)934LD語言應(yīng)用使能運(yùn)算符常開觸點(diǎn)常閉觸點(diǎn)輸出線圈,用來給變量賦值所有運(yùn)算程序都編寫完成后,要在主程序中調(diào)用其它的運(yùn)算程序。適用于純粹的開關(guān)量運(yùn)算。由觸點(diǎn)(常開,常閉,正傳感,負(fù)傳感,反向)、線圈(輸出,單穩(wěn)態(tài),鎖定,解鎖,跳轉(zhuǎn))、功能元件(定時器,計數(shù)器,步序器)等元素通過水平線或垂直線連接起來的平面網(wǎng)狀圖。此外還提供有使能輸入端的POU調(diào)用機(jī)制。第7講控制器算法組態(tài)94第7講控制器算法組態(tài)第八節(jié)工程下裝、調(diào)試編譯下裝調(diào)試思考與練習(xí)951編譯工程組態(tài)完成之后,要進(jìn)行編譯,以檢查組態(tài)是否存在錯誤,并在“信息”窗口中顯示編譯結(jié)果。編譯后會生成兩個文件:*.SDB和符號表文件*.SYM。如果是第一次進(jìn)行工程編譯,上兩種選項(xiàng)都會編譯整個工程內(nèi)容。上次編譯基礎(chǔ)上,如果只修改了POU和全局變量部分,再選擇“編譯”則只編譯修改部分。如果修改了MACS配置、目標(biāo)設(shè)置、任務(wù)配置,或執(zhí)行過“清空”命令,再選擇“編譯”,則是整個工程內(nèi)容的全部編譯。選擇“全部編譯”,編譯全部工程內(nèi)容。編譯時選擇“工程/編譯”或“工程/全部編譯”??梢姟熬幾g”和“全部編譯”只側(cè)重編譯范圍的不同;至于是會重建所有的目標(biāo)文件(對應(yīng)全下裝),還是只在原目標(biāo)文件基礎(chǔ)上做追加(對應(yīng)增量下裝),則并不取決于是執(zhí)行了“編譯”還是“全部編譯”,而在于編譯工程前修改的內(nèi)容是什么?。ㄒ娤卵b部分)第7講控制器算法組態(tài)961下裝——通訊參數(shù)的設(shè)置下裝是把工程文件從工程師站傳送到主控單元的過程。這要借助于監(jiān)控網(wǎng)的以太網(wǎng)連

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論