您現在的位置:首頁 > 技術文章 > 基于PLC的流量監(jiān)控系統(tǒng)設計

基于PLC的流量監(jiān)控系統(tǒng)設計

  • 發(fā)布日期:2014-11-01      瀏覽次數:2978
    • 基于PLC的流量監(jiān)控系統(tǒng)設計

      上海申弘閥門有限公司

      1 選題背景

      本畢業(yè)設計課題來自實驗室建設。目的是利用PLC來實現過程控制。目前,PLC使用范圍可覆蓋從替代繼電器的簡單控制到更復雜的自動化控制。上海申弘閥門有限公司主營閥門有:減壓閥(氣體減壓閥,可調式減壓閥,波紋管減壓閥,活塞式減壓閥,蒸汽減壓閥,先導式減壓閥,空氣減壓閥,氮氣減壓閥,水用減壓閥,自力式減壓閥,比例減壓閥)、安全閥、保溫閥、低溫閥、球閥截止閥、閘閥、止回閥、蝶閥、過濾器、放料閥、隔膜閥、旋塞閥、柱塞閥、平衡閥、調節(jié)閥、疏水閥、管夾閥、排污閥、排氣閥、排泥閥、氣動閥門、電動閥門、高壓閥門、中壓閥門、低壓閥門、水力控制閥、真空閥門、襯膠閥門、襯氟閥門。應用領域極為廣泛,覆蓋所有與自動檢測,自動化控制有關的工業(yè)及民用領域,包括各種機床、機械、電力設施、民用設施、環(huán)境保護設備等等。PLC通過模擬量I/O模塊,實現模擬量與數字量之間的 A/D、D/A轉換,并對模擬量進行閉環(huán)PID控制。用MCGS組態(tài)軟件組態(tài)配置工業(yè)控制監(jiān)控系統(tǒng),對數據進行實時監(jiān)控。

      2 方案論證

      本畢業(yè)設計原理是利用擴展模塊EM235(AI4/AQ1*12位)進行數據采集,然后把采集到的數據利用程序進行工程量轉換,給定量與輸入量相減得出偏換,送到執(zhí)行器,從而構成的是單閉環(huán)控制。

      采用增量式PID,具有以下優(yōu)點:(1)增量算法控制誤動作影響小。(2)增量算法控制易于實現手動/自動無擾動切換。(3)不產生積分失控,易獲得較好的調節(jié)品質。在實際應用中,在以步進電機或多圈電位器作執(zhí)行器件的系統(tǒng)中,則采用增量式PID算法。

      MCGS即"監(jiān)視與控制通用系統(tǒng)",英文全稱為Monitor and Control Generated System。MCGS是為工業(yè)過程控制和實時監(jiān)測領域服務的通用計算機系統(tǒng)軟件,具有功能完善、操作簡便、可視性好、可維護性強的突出特點。MCGS工控組態(tài)軟件是一套32位工控組態(tài)軟件,集流程控制、數據采集、設備控制與輸出數據與曲線等諸多強大功能于一身,廣泛應用于石油、電力、化工、鋼鐵、礦山、冶金、機械等

      3 開發(fā)設計過程

      3.1 總體分析

      學習了PLC的硬件系統(tǒng)、指令系統(tǒng)和編程方法以后,對設計一個較大的PLC系統(tǒng)時,要全面考慮許多因素,不管所設計的控制系統(tǒng)的大小,要按照下列設計步驟進行系統(tǒng)設計。如圖1:

      3.2 工藝過程              

      隨著PLC功能的不斷提高和完善,PLC幾乎可以完成工業(yè)控制領域的所有任務,但PLC還有它的應用場合:工業(yè)環(huán)境較差,而對安全性、可靠性要求較高,系統(tǒng)工藝復雜,輸入/輸出以開關量為主的工業(yè)自控系統(tǒng)或裝置,它對模擬量的處理能力也很強。所以在很多情況下,也可取代工業(yè)控制計算機作為主控制器,來完成復雜的工業(yè)自動控制任務。

      控制對象及控制裝置選定后,還要進一步確定PLC的控制范圍。一般來說,能夠反映生產過程的運行情況,能夠用傳感器進行直接測量的參數,控制邏輯復雜的部分都由PLC完成。另外,對主要控制對象還要加上手動控制功能。針對此次的控制任務,是利用PLC對液體流量(模擬量)進行控制。要求把管道中水流控制在一定的速度,要求用增量式PID控制算法進行控制。如圖2所示:

      3.3 系統(tǒng)控制要求

      1、要求用PLC編寫程序,采用單閉環(huán)控制,來控制電動調節(jié)閥開度,以達到控制管道內液體流量的目的。

      2、用PLC編寫程序,采用單回路控制,以采集的流量為反饋信號,與給定值進行比較,以達到控制液體流量的目的。

      3、用MCGS組態(tài)軟件對設計系統(tǒng)進行組態(tài),對現場數據進行實時監(jiān)控。

      3.4 系統(tǒng)的I/O點及地址分配

      輸入/輸出信號在PLC接線端子上的地址分配是進行PLC控制系統(tǒng)設計的基礎。對軟件設計來說,I/O地址分配以后才可進行編程;對控制柜及PLC的外圍接線來說,只有I/O地址確定以后,才可以繪制電氣接線圖、裝配圖,分配地址時,要注意負載類型。

      控制系統(tǒng)的輸入/輸出信號的名稱、代碼及地址編號如下表所示:

      符號

      地址

      備注

      Kz

      M0.0

      控制方式

      Ee

      VD136

      偏差

      e_1

      VD140

      偏差前值

      e_2

      VD144

      偏差前前值

      Mnp

      VD148

      比例值

      Mni

      VD152

      積分值

      Mnd

      VD156

      微分值

      dMn

      VD160

      PID增量

      Mn_1

      VD164

      輸出前值

      Mn

      VD168

      輸出值

      Kc

      VD172

      比例系數

      Ti

      VD176

      積分時間常數

      Td

      VD180

      微分時間常數

      Ts

      VD184

      采樣周期

      Pvn

      VD200

      測量值

      Spn

      VD208

      給定值

      max

      VW220

      測量值大值

                                             表1  地址分配

      3.5  PLC系統(tǒng)的選型

      選擇PLC一方面要注意容量,另一方面什么公司的。從上面的分析可以知道,系統(tǒng)需要模擬量輸入點一個,模擬量輸出點一個??梢赃x用西門子公司S7-200 CPU222PLC(8入/6繼電器輸出)一臺,特點:體積小巧,全面功能,適應于中小機器設備的控制,適用于各行各業(yè),各種場合中的檢測、監(jiān)測及控制的自動化。強大功能使其無論在獨立運行中,或相連成網絡皆能實現復雜控制功能。因此S7-200系列具有*的性能/價格比*的可靠性,極豐富的指令集 易于掌握,便捷的操作豐富的內置集成功能,強勁的通訊能力,豐富的擴展模塊。在加上一臺擴展模塊EM235(4AI/1AO)。這樣的配置。

      3.6 需要考慮的其它問題

      1、保護措施;

      2、系統(tǒng)保直流電源的容量;

      3、電源方面的抗干擾措施;

      4、輸出方面的護措施。

      3.7 系統(tǒng)程序設計

      3.7.1數字PID控制算法

      在連續(xù)-時間控制系統(tǒng)中,PID控制器應用得非常廣泛。其設計技術成熟,以來形成了典型的結構,參數整定方便,結構更改靈活,能滿足一般的控制要求。 數字PID控制比連續(xù)PID控制更為*,因為計算機程序的靈活性,很容易克服連續(xù)PID控制中存在的問題,經修正而得到更完善的數字PID算法。連續(xù)一時間PID控制系統(tǒng)如4所示。圖4中,D(s)為控制器。在PID控制系統(tǒng)中,D(s)完成PID控制規(guī)律,稱為PID控制器。

       PID控制器是一種線性控制器,用輸出量y(t)和給定量r(t)之間的誤差的時間函數。e(t)=r(t)-y(t) 的比例,積分,微分的線性組合,構成控制量u(t),稱為比例(Proportional)積分(Integrating)微分(Differentiation)控制,簡稱PID控制。實際應用中,可以根據受控對象的特性和控制的性能要求,靈活地采用不同的控制組合,構成
      比例(P)控制器        式中    KP——比例放大系數;TI——積分時間;  TD——微分時間。

          控制作用:比例控制能迅速反應誤差,從而減小穩(wěn)態(tài)誤差。但是,比例控制不能消除穩(wěn)態(tài)誤差。比例放大系數的加大,會引起系統(tǒng)的不穩(wěn)定。積分控制的作用是,只要系統(tǒng)有誤差存在,積分控制器就不斷地積累,輸出控制量,以消除誤差。因而,只要有足夠的時間,積分控制將能*消除誤差,使系統(tǒng)誤差為零,從而消除穩(wěn)態(tài)誤差。積分作用太強會使系統(tǒng)超調加大,甚至使系統(tǒng)出現振蕩。微分控制可以減小超調量,克服振蕩,使系統(tǒng)的穩(wěn)定性提高,同時加快系統(tǒng)的動態(tài)響應速度,減小調整時間,從而改善系統(tǒng)的動態(tài)性能。應用PID控制,必須適當地調整比例放大系數KP,積分時間TI和微分時間TD,使整個控制系統(tǒng)得到良好的性能

      數字PID控制算法:在電子數字計算機直接數字控制系統(tǒng)中,PID控制器是通過計算機PID控制算法程序實現的。計算機直接數字控制系統(tǒng)大多數是采樣-數據控制系統(tǒng)。進入計算機的連續(xù)-時間信號,必須經過采樣和整量化后,變成數字量,方能進入計算機的存貯器和寄存器,而在數字計算機中的計算和處理,不論是積分還是微分,只能用數值計算去逼近。在數字計算機中,PID控制規(guī)律的實現,也必須用數值逼近的方法。當采樣周期相當短時,用求和代替積分,用差商代替微商,使PID算法離散化,將描述連續(xù)-時間PID算法的微分方程,變?yōu)槊枋鲭x散-時間PID算法的差分方程。

      增量式PID控制算法:當執(zhí)行機構需要的不是控制量的值,而是控制量的增量(例如去驅動步進電動機)時,需要用PID的“增量算法”。

      由位置算法求出上式已看不出是PID的表達式了,也看不出P、I、D作用的直接關系,只表示了各次誤差量對控制作用的影響。從式看出,數字增量式PID算法,只要貯存近的三個誤差采樣值e(k)、e(k-1)、e(k-2)就足夠了。

      增量式PID控制的優(yōu)點與不足:

      優(yōu)點: 1、增量算法控制誤動作影響小。

      2、增量算法控制易于實現手動/自動無擾動切換。

        3、不產生積分失控,易獲得較好的調節(jié)品質。

      缺點:1、積分截斷效應大,有靜態(tài)誤差。

        2、溢出影響大在實際應用中,在以步進電機或多圈電位器作執(zhí)行器件的系統(tǒng)中,則采用增量式算法。

      圖6  增量式PID控制算法流程圖

      3.7.2 回路輸入/輸出量的工程量轉換

      一個回路具有兩個輸入量,即給定值和過程變量。給定值通常為一固定值。過程變量受回路輸出的影響并反映了控制的效果。給定值和過程變量都是實際的工程量,其幅度、范圍和測量單位都會不同。在實施PID算法之前,必須將這些值轉換為歸一化純量、浮點數的格式,即:將實數格式的工程實際值轉換為[0.0,1]間的無量剛相對值(稱為歸一化格式)。

      用下式來將給定值或過程變量歸一化:

                             Rnorm=Rraw/Span+E

      式中:Rnom為工程實際值的歸一化值;Rraw為工程實際值的實數形式,未歸一化處理;E對于單極性值,取0;對于雙極性值,取0.5;Span為大允許值減去小允許值,通常?。?2000(對于單極性),64000(對于雙極性)。

      將回路控制輸出轉換為按工程量標定的整數值。

          回路控制的輸出,相對于被控對象來說,為一個控制量。注意:回路控制輸出為在[0.0,1.0]范圍內的歸一化實數格式,它必須先轉換為16位按工程量標定的值后方可用于驅動實際裝置。這一轉換實際上為歸一過程的逆過程。*步是用下式將回路輸出轉換為按工程量標定的實數格式:

                              Rscal=(Mn-E)*Span

      式中:Rscal為已按工程量標定的實數格式的回路輸出;Mn為歸一化格式的回路輸出;E對于單極性模擬量,取為0.0;對雙極性模擬量,取為0.5;Span為大允許值減去小允許值,通常?。?2000(單極性),64000(雙極性)

      3.7.3 程序流程圖 

      本程序分為三部分:主程序、子程序、中斷程序。邏輯運算放在主程序。系統(tǒng)初始化的一些工作放在初始化子程序中完成,這樣節(jié)省掃描時間。利用定時器中斷實現PID控制的定時采樣及輸出部分。

      3.8 MCGS組態(tài)軟件對系統(tǒng)的組態(tài)過程

      計算機技術和網絡技術的飛速發(fā)展,為工業(yè)自動化開辟了廣闊的發(fā)展空間,用戶可以方便快捷地組建的監(jiān)控系統(tǒng),并且通過采用遠程監(jiān)控及診斷、雙機熱備等技術,使系統(tǒng)更加安全可靠,在這方面,MCGS工控組態(tài)軟件提供強有力的軟件支持。

      MCGS全中文工業(yè)自動化控制組態(tài)軟件(以下簡稱MCGS工控組態(tài)軟件或MCGS)為用戶建立全新的過程測控系統(tǒng)提供了一整套解決方案。MCGS工控組態(tài)軟件是一套32位工控組態(tài)軟件,集動畫顯示、流程控制、數據采集、設備控制與輸出、網絡數據傳輸、雙機熱備、工程報表、數據與曲線等諸多強大功能于一身,并支持國內外眾多數據采集與輸出設備,廣泛應用于石油、電力、化工、鋼鐵、礦山、冶金、機械、紡織、航天、建筑、材料、制冷、交通、通訊、食品、制造與加工業(yè)、水處理、環(huán)保、智能樓宇、實驗室等多種工程領域。 

      MCGSWW服務器版本,集工業(yè)現場的集散控制和各類歷史、實時數據及相關曲線的WWW發(fā)布于一體,可以解決整個企業(yè)的Internet/Intranet方案,也可以非常方便的與您已有的企業(yè)網絡相銜接,讓您從具體的技術環(huán)節(jié)和繁雜的數據堆中脫身,隨時隨地掌握工業(yè)現場與企業(yè)運營狀態(tài),了解所需的各項信息,大幅度提高工作效率,實現成功決策。 

      MCGS即"監(jiān)視與控制通用系統(tǒng)",英文全稱為Monitor and Control Generated System。MCGS是為工業(yè)過程控制和實時監(jiān)測領域服務的通用計算機系統(tǒng)軟件,具有功能完善、操作簡便、可視性好、可維護性強的突出特點。

      3.8.1 MCGS工控組態(tài)軟件的功能和特點

      1、概念簡單,易于理解和使用。普通工程人員經過短時間的培訓就能正確掌握、快速完成多數簡單工程項目的監(jiān)控程序設計和運行操作。用戶可避開復雜的計算機軟硬件問題,集中精力解決工程本身的問題,按照系統(tǒng)的規(guī)定,組態(tài)配置出高性能、高可靠性、高度專業(yè)化的上位機監(jiān)控系統(tǒng)。

      2、功能齊全,便于方案設計。MCGS為解決工程監(jiān)控問題提供了豐富多樣的手段,從設備驅動(數據采集)到數據處理、報警處理、流程控制、動畫顯示、報表輸出、曲線顯示等各個環(huán)節(jié),均有豐富的功能組件和常用圖形庫可供選用,用戶只需根據工程作業(yè)的需要和特點,進行方案設計和組態(tài)配置,即可生成用戶應用軟件系統(tǒng)。

      3、實時性與并行處理。MCGS充分利用了Windows操作平臺的多任務、按優(yōu)先級分時操作的功能,使PC機廣泛應用于工程測控領域成為可能。工程作業(yè)中,大量的數據和信息需要及時收集,即時處理,在計算機測控技術領域稱其為實時性任務關鍵任務,如數據采集、設備驅動和異常處理等。另外許多工作則是非實時性的,或稱為非時間關鍵任務,如畫面顯示,可在主機運行周期時間內插空進行。而像打印數據一類的工作,可運行于后臺,稱為脫機作業(yè)。MCGS是真正的32位系統(tǒng),可同時運行于Microsoft Windows9598Microsoft Windows NT平臺,以線程為單位進行分時并行處理。

      4、建立實時數據庫,便于用戶分步組態(tài),保證系統(tǒng)安全可靠運行。MCGS組態(tài)軟件由主控窗口、設備窗口、用戶窗口、實時數據庫和運行策略五部分構成。其中的“實時數據庫”是整個系統(tǒng)的核心。在生成用戶應用系統(tǒng)時,每一部分均可分別進行組態(tài)配置,獨立建造,互不相干;而在系統(tǒng)運行過程中,各個部分都通過實時數據庫交換數據,形成互相關聯(lián)的整體。實時數據庫是一個數據處理中心,是系統(tǒng)各個部分及其各種功能性構件的公用數據區(qū)。各個部件獨立地向實時數據庫輸入和輸出數據,并完成自己的差錯控制。

      5、設立“設備工具箱”,針對外部設備的特征,用戶從中選擇某種“構件”,設置于設備窗口內,賦予相關的屬性,建立系統(tǒng)與外部設備的連接關系,即可實現對該種設備的驅動和控制。不同的設備對應于不同的構件,所有的設備構件均通過實時數據庫建立,而建立時又是相互獨立的,即對某一構件的操作或改動,不影響其它構件和整個系統(tǒng)的結構,從這一意義上講,MCGS是一個“設備無關”的系統(tǒng),用戶不必因外部設備局部改動,而影響整個系統(tǒng)。

      6、“面向窗口”的設計方法,增加了可視性和可操作性。以窗口為單位,構造用戶運行系統(tǒng)的圖形界面,使得MCGS的組態(tài)工作既簡單直觀,又靈活多變。用戶可以使用系統(tǒng)的缺省構架,也可以根據需要自己組態(tài)配置,生成各種類型和風格的圖形界面,包括DOS風格的圖形界面、標準Windows風格的圖形界面以及帶有動畫效果的工具條和狀態(tài)條。

      7、利用豐富的“動畫組態(tài)”功能,快速構造各種復雜生動的動態(tài)畫面。以圖象、圖符、數據、曲線等多種形式,為操作員及時提供系統(tǒng)運行中的的狀態(tài)、品質及異常報警等有關信息。用變化大小、改變顏色、明暗閃爍、移動翻轉等多種手段,增強畫面的動態(tài)顯示效果。圖元、圖符對象定義相應的狀態(tài)屬性,即可實現動畫效果。同時,MCGS為用戶提供了豐富的動畫構件,模擬工程控制與實時監(jiān)測作業(yè)中常用的物理器件的動作和功能。每個動畫構件都對應一個特定的動畫功能。如:實時曲線構件、歷史曲線構件、報警顯示構件、自由表格構件等。

      8、引入“運行策略”的概念。復雜的工程作業(yè),運行流程都是多分支的。用傳統(tǒng)的編程方法實現,既繁瑣又容易出錯。MCGS開辟了“策略窗口”,用戶可以選用系統(tǒng)提供的各種條件和功能的“策略構件”,用圖形化的方法構造多分支的應用程序,實現自由、地控制運行流程,按照設定的條件和順序,操作外部設備,控制窗口的打開或關閉,與實時數據庫進行數據交換。同時,也可以由用戶創(chuàng)建新的策略構件,擴展系統(tǒng)的功能。

      9、MCGS系統(tǒng)由五大功能部件組成,主要的功能部件以構件的形式來構造。不同的構件有著不同的功能,且各自獨立。三種基本類型的構件(設備構件、動畫構件、策略構件)完成了MCGS系統(tǒng)三大部分(設備驅動、動畫顯示和流程控制)的所有工作。用戶也可以根據需要,定制特定類型構件,使MCGS系統(tǒng)的功能得到擴充。這種充分利用“面向對象”的技術,大大提高了系統(tǒng)的可維護性和可擴充性。

      10、支持OLE Automation技術。MCGS允許用戶在Visual Basic中操作MCGS中的對象,提供了一套開放的可擴充接口,用戶可根據自己的需要用VB編制特定的功能構件來擴充系統(tǒng)的功能。

      11、MCGS中數據的存儲不再使用普通的文件,而是用數據庫來管理一切。組態(tài)時,系統(tǒng)生成的組態(tài)結果是一個數據庫;運行時,數據對象、報警信息的存儲也是一個數據庫。利用數據庫來保存數據和處理數據,提高了系統(tǒng)的可靠性和運行效率,同時,也使其它應用軟件系統(tǒng)能直接處理數據庫中的存盤數據。

      12、設立“對象元件庫”,解決了組態(tài)結果的積累和重新利用問題。所謂對象元件庫,實際上是分類存儲各種組態(tài)對象的圖庫。組態(tài)時,可把制作完好的對象(包括圖形對象,窗口對象,策略對象,以至位圖文件等等)以元件的形式存入圖庫中,也可把元件庫中的各種對象取出,直接為當前的工程所用。隨著工作的積累,對象元件庫將日益擴大和豐富,組態(tài)工作將會變得越來越簡單方便。

      13、提供對網絡的支持??紤]到工控系統(tǒng)今后的發(fā)展趨勢,MCGS充分運用現今發(fā)展的DCCW(Distributed Computer Cooperator Work)技術,即分布式計算機協(xié)同工作方式,來使分散在不同現場之間的采集系統(tǒng)和工作站之間協(xié)同工作。通過MCGS,不同的工作站之間可以實時交換數據,實現對工控系統(tǒng)的分布式控制和管理。

      3.8.2 MCGS工程的五大部分

      MCGS組態(tài)軟件所建立的工程由主控窗口、設備窗口、用戶窗口、實時數據庫和運行策略五部分構成,每一部分分別進行組態(tài)操作,完成不同的工作,具有不同的特性。

      1、主控窗口:是工程的主窗口或主框架。在主控窗口中可以放置一個設備窗口和多個用戶窗口,負責調度和管理這些窗口的打開或關閉。主要的組態(tài)操作包括:定義工程的名稱,編制工程菜單,設計封面圖形,確定自動啟動的窗口,設定動畫刷新周期,數據庫存盤文件名稱及存盤時間等。

      2、設備窗口:是連接和驅動外部設備的工作環(huán)境。在本窗口內配置數據采集與控制輸出設備,注冊設備驅動程序,定義連接與驅動設備用的數據變量。

      3、用戶窗口:本窗口主要用于設置工程中人機交互的界面,諸如:生成各種動畫顯示畫面、報警輸出、數據與曲線圖表等。

      4、實時數據庫:是工程各個部分的數據交換與處理中心,它將MCGS工程的各個部分連接成有機的整體。在本窗口內定義不同類型和名稱的變量,作為數據采集、處理、輸出控制、動畫連接及設備驅動的對象。

      5、運行策略:本窗口主要完成工程運行流程的控制。包括編寫控制程序(if…then腳本程序),選用各種功能構件,如:數據提取、歷史曲線、定時器、配方操作、多媒體輸出等。

      3.8.3 MCGS組態(tài)過程

      使用MCGS完成一個實際的應用系統(tǒng),首先必須在MCGS的組態(tài)環(huán)境下進行系統(tǒng)的組態(tài)生成工作,然后將系統(tǒng)放在MCGS的運行環(huán)境下運行。本章逐步介紹在MCGS組態(tài)環(huán)境下構造一個用戶應用系統(tǒng)的過程,以便對MCGS系統(tǒng)的組態(tài)過程有一個全面的了解和認識。

      3.8.3.1 工程整體規(guī)劃

      在實際工程項目中,使用MCGS構造應用系統(tǒng)之前,應進行工程的整體規(guī)劃,保證項目的順利實施。

      對工程設計人員來說,首先要了解整個工程的系統(tǒng)構成和工藝流程,弄清測控對象的特征,明確主要的監(jiān)控要求和技術要求等問題。在此基礎上,擬定組建工程的總體規(guī)劃和設想,主要包括系統(tǒng)應實現哪些功能,控制流程如何實現,需要什么樣的用戶窗口界面,實現何種動畫效果以及如何在實時數據庫中定義數據變量等環(huán)節(jié),同時還要分析工程中設備的采集及輸出通道與實時數據庫中定義的變量的對應關系,分清哪些變量是要求與設備連接的,哪些變量是軟件內部用來傳遞數據及用于實現動畫顯示的等問題。作好工程的整體規(guī)劃,在項目的組態(tài)過程中能夠盡量避免一些無謂的勞動,快速有效地完成工程項目。

       

      3.8.3.2 工程建立

      MCGS中用“工程”來表示組態(tài)生成的應用系統(tǒng),創(chuàng)建一個新工程就是創(chuàng)建一個新的用戶應用系統(tǒng),打開工程就是打開一個已經存在的應用系統(tǒng)。工程文件的命名規(guī)則和Windows系統(tǒng)相同,MCGS自動給工程文件名加上后綴“.mcg”。

      保存新工程時,可以隨意更換工程文件的名稱。缺省情況下,所有的工程文件都存放在MCGS安裝目錄下的Work子目錄里,用戶也可以根據自身需要存放工程文件的目錄。

      3.8.3.3 構造實時數據庫

      實時數據庫是MCGS系統(tǒng)的核心,也是應用系統(tǒng)的數據處理中心,系統(tǒng)各部分均以實時數據庫為數據公用區(qū),進行數據交換、數據處理和實現數據的可視化處理。定義數據對象的過程,就是構造實時數據庫的過程。

      定義數據對象時,在組態(tài)環(huán)境工作臺窗口中,選擇“實時數據庫”標簽,進入實時數據庫窗口頁,顯示已定義的數據對象,置增加一個新的對象時,可在該處選定數據對象,鼠標單擊“新增對象”按鈕,則在選中的對象之后增加一個新的數據對象;如不位置,則在對象表的后增加一個新的數據對象。新增對象的名稱以選中的對象名稱為基準,按字符遞增的順序由系統(tǒng)缺省確定。對于新建工程,定義的數據對象。缺省名稱為Data1。需要注意的是,數據對象的名稱中不能帶有空格,否則會影響對此數據對象存盤數據的讀取。數據對象屬性設置

      MCGS把數據對象的屬性封裝在對象內部,作為一個整體,由實時數據庫統(tǒng)一管理。對象的屬性包括基本屬性、存盤屬性和報警屬性?;緦傩詣t包含對象的名稱、類型、初值、界限(大小)值、工程單位和對象內容注釋等項內容。

      表2  定義變量

      符號

      地址

      備注

      Kz

      M0.0

      控制方式

      Ee

      VD136

      偏差

      e_1

      VD140

      偏差前值

      e_2

      VD144

      偏差前前值

      Mnp

      VD148

      比例值

      Mni

      VD152

      積分值

      Mnd

      VD156

      微分值

      dMn

      VD160

      PID增量

      Mn_1

      VD164

      輸出前值

      Mn

      VD168

      輸出值

      Kc

      VD172

      比例系數

      Ti

      VD176

      積分時間常數

      Td

      VD180

      微分時間常數

      Ts

      VD184

      采樣周期

      Pvn

      VD200

      測量值

      Spn

      VD208

      給定值

      max

      VW220

      測量值大值

         圖13  實時數據庫窗口

      在“實時數據庫”窗口頁中,可以象在Windows95的文件操作窗口中一樣,能夠以大圖標、小圖標、列表、詳細資料四種方式顯示實時數據庫中已定義的數據對象,可以選擇按名稱的順序或按類型順序來顯示數據對象,也可以剪切、拷貝、粘貼的數據對象,還可以直接修改數據對象的名稱。

      為了快速生成多個相同類型的數據對象,可以選擇“成組增加”按鈕,彈出“成組增加數據對象”對話框,一次定義多個數據對象,如上圖所示。成組增加的數據對象,名稱由主體名稱和索引代碼兩部分組成。其中,“對象名稱”一欄,代表該組對象名稱的主體部分,而“起始索引值”則代表*個成員的索引代碼,其它數據對象的主體名稱相同,索引代碼依次遞增。成組增加的數據對象,其他特性如數據類型、工程單位、大小值等都是一致的。

      3.8.3.4 組態(tài)用戶窗口

      1、創(chuàng)建用戶窗口

      選擇組態(tài)環(huán)境工作臺中的用戶窗口頁,所有的用戶窗口均位于該窗口頁內,如圖14所示:

      圖14  用戶窗口

      按“新建窗口”按鈕,或執(zhí)行菜單中的“插入”→“用戶窗口”命令,即可創(chuàng)建一個新的用戶窗口,以圖標形式顯示。開始時,新建的用戶窗口只是一個空窗口,用戶可以根據需要設置窗口的屬性和在窗口內放置圖形對象。

      2、設置用戶窗口屬性

      選擇待定義的用戶窗口圖標,點鼠標右鍵選擇屬性,也可以單擊工作臺窗口中的“窗口屬性”按鈕,或者單擊工具條中的“顯示屬性”按鈕 ,或者操作快捷鍵“Alt+Enter”,彈出“用戶窗口屬性設置”對話框,按所列款項設置有關屬性。

      用戶窗口的屬性包括基本屬性、擴充屬性和腳本控制(啟動腳本、循環(huán)腳本、退出腳本),由用戶選擇設置。窗口的基本屬性包括窗口名稱、顯示標題、背景顏色、窗口位置、窗口邊界、窗口內容注釋等項內容。

      窗口的擴充屬性包括窗口的外觀、位置坐標和視區(qū)大小等項內容。窗口的視區(qū)是指實際可用的區(qū)域,與屏幕上所見的區(qū)域可以不同,當選擇視區(qū)大于可見區(qū)時,窗口側邊附加滾動條,操作滾動條可以瀏覽窗口內所有的圖形對象。

      腳本控制包括啟動腳本,循環(huán)腳本和退出腳本,啟動腳本在用戶窗口打開時,循環(huán)腳本是在窗口打開期間以的間隔循環(huán)執(zhí)行,退出腳本則是在用戶窗口關閉時執(zhí)行。

      3、創(chuàng)建圖形對象

      MCGS提供了三類圖形對象供用戶選用, 即圖元對象、圖符對象和動畫構件。這些圖形對象位于常用符號工具箱和動畫工具箱內,用戶從工具箱中選擇所需要的圖形對象,配置在用戶窗口內,可以創(chuàng)建各種復雜的圖形。

      4、編輯圖形對象

      圖形對象創(chuàng)建完成后,要對圖形對象進行各種編輯工作,如:改變圖形的顏色和大小,調整圖形的位置和排列形式,圖形的旋轉及組合分解等項操作,MCGS提供了完善的編輯工具,使用戶能快速制作各種復雜的圖形界面,以圖形方式表示外部物理對象。

      5、定義動畫連接

      定義動畫連接,實際上是將用戶窗口內創(chuàng)建的圖形對象與實時數據庫中定義的數據對象建立對應連接關系,通過對圖形對象在不同的數值區(qū)間內設置不同的狀態(tài)屬性(如顏色、大小、位置移動、可見度、閃爍效果等),用數據對象的值的變化來驅動圖形對象的狀態(tài)改變,使系統(tǒng)在運行過程中,產生形象逼真的動畫效果。因此,動畫連接過程就歸結為對圖形對象的狀態(tài)屬性設置的過程。

      6、圖元圖符對象連接

      MCGS中,每個圖元、圖符對象都可以實現11種動畫連接方式??梢岳眠@些圖元、圖符對象來制作實際工程所需的圖形對象,然后再建立起與數據對象的對應關系,定義圖形對象的一種或多種動畫連接方式,實現特定的動畫功能。

      7、動畫構件連接

      為了簡化用戶程序設計工作量,MCGS將工程控制與實時監(jiān)測作業(yè)中常用的物理器件,如按鈕、操作桿、顯示儀表和曲線表盤等,制成獨立的圖形存儲于圖庫中,供用戶調用,這些能實現不同動畫功能的圖形稱為動畫構件。

      在組態(tài)時,只需要建立動畫構件與實時數據庫中數據對象的對應關系,就能完成動畫構件的連接,如對實時曲線構件,需要指明該構件運行時記錄哪個數據對象的變化曲線;對報警顯示構件,需要指明該構件運行時顯示哪個數據對象的報警信息。

      電動閥單閉環(huán)液位控制窗口如圖15:

      圖15  電動閥單閉環(huán)液位控制窗口

       

      電動閥單閉環(huán)液位控制歷史曲線窗口如圖17: 

      圖17  電動閥單閉環(huán)液位控制歷史曲線窗口

      電動閥單閉環(huán)液位控制歷史數據窗口如圖18:

      圖18 電動閥單閉環(huán)液位控制歷史數據窗口

      3.8.3.5 組態(tài)主控窗口

      主控窗口是用戶應用系統(tǒng)的主窗口,也是應用系統(tǒng)的主框架,展現工程的總體外觀。主控窗口提供菜單命令,響應用戶的操作。主控窗口負責調度設備窗口的工作、管理用戶窗口的打開和關閉、驅動動畫圖形和調度用戶策略的運行等工作。主控窗口組態(tài)包括菜單設計和主控窗口中系統(tǒng)屬性的設置。

      1、系統(tǒng)菜單設計

      對于一個新建的工程,MCGS提供了一套缺省菜單,用戶也可以根據需要設計自己的菜單。

      2、主控窗口屬性設置

      選中“主控窗口”圖標,鼠標單擊“工作臺”窗口中的“系統(tǒng)屬性”按鈕,或者單擊工具條中的“顯示屬性”按鈕,或者選擇“編輯”菜單中的“屬性”菜單項,顯示“主控窗口屬性設置”對話框。分為下列五種屬性,按頁設置。

      3.8.3.6 組態(tài)設備窗口

      設備窗口是MCGS系統(tǒng)與作為測控對象的外部設備建立的后臺作業(yè)環(huán)境,負責驅動外部設備,控制外部設備的工作狀態(tài)。系統(tǒng)通過設備與數據之間的通道,把外部設備的運行數據采集進來,送入實時數據庫,供系統(tǒng)其它部分調用,并且把實時數據庫中的數據輸出到外部設備,實現對外部設備的操作與控制。

      MCGS為用戶提供了多種類型的“設備構件”,作為系統(tǒng)與外部設備進行的媒介。進入設備窗口,從設備構件工具箱里選擇相應的構件,配置到窗口內,建立接口與通道的連接關系,設置相關的屬性,即完成了設備窗口的組態(tài)工作。

      運行時,應用系統(tǒng)自動裝載設備窗口及其含有的設備構件,并在后臺獨立運行。對用戶來說,設備窗口是不可見的。

      1、選擇設備構件

      在工作臺的“設備窗口”頁中:鼠標雙擊設備窗口圖標(或選中窗口圖標,單擊“設備組態(tài)”按鈕),彈出設備組態(tài)窗口;選擇工具條中的“工具箱”按鈕,彈出設備工具箱;鼠標雙擊設備工具箱里的設備構件,或選中設備構件,鼠標移到設備窗口內,單擊,則可將其選到窗口內。

      設備工具箱內包含有MCGS目前支持的所有硬件設備,對系統(tǒng)不支持的硬件設備,需要預先定制相應的設備構件,才能對其進行操作。MCGS將不斷增加新的設備構件,以提供對更多硬件設備的支持。

      我所選的設備為:

      設備0[口通訊父設備]、設備1[西門子S7-200PPI]

      2、設置設備構件屬性

      選中設備構件,單擊工具條中的“屬性”按鈕或選擇“編輯”菜單中的“屬性”命令,或者鼠標雙擊設備構件,彈出所選設備構件的“屬性設置”對話框,進入“基本屬性”窗口頁,按所列項目設定。

      不同的設備構件有不同的屬性,一般都包括如下三項:設備名稱、輸入輸出(I/O)端口地址、數據采集周期。系統(tǒng)各個部分對設備構件的操作是以設備名為基準的,因此各個設備構件不能重名。與硬件相關的參數必須正確設置,否則系統(tǒng)不能正常工作

      圖25  設備0屬性窗口

      設備1屬性設置:

      圖26  設備1基本屬性窗口

      3、設備通道連接

      把輸入輸出裝置讀取數據和輸出數據的通道稱為設備通道,建立設備通道和實時數據庫中數據對象的對應關系的過程稱為通道連接。建立通道連接的目的是通過設備構件,確定采集進來的數據送入實時數據庫的什么地方,或從實時數據庫中什么地方取用數據。

      在屬性設置對話框內,選擇“通道連接和設置”窗口頁,按表中所列款項設置。

       

      圖27  設備1通道連接窗口

      3.8.3.7 組態(tài)運行策略

      運行策略是指對監(jiān)控系運行流程進行控制的方法和條件,它能夠對系統(tǒng)執(zhí)行某項操作和實現某種功能進行有條件的約束。運行策略由多個復雜的功能模塊組成,稱為“策略塊”,用來完成對系統(tǒng)運行流程的自由控制,使系統(tǒng)能按照設定的順序和條件,進行操作實時數據庫,控制用戶窗口的打開、關閉以及控制設備構件的工作狀態(tài)等一系列工作,從而實現對系統(tǒng)工作過程的控制及有序的調度管理。

      用戶可以根據需要來創(chuàng)建和組態(tài)運行策略。

      1、創(chuàng)建運行策略

      每建立一個新工程,系統(tǒng)都自動創(chuàng)建三個固定的策略塊:啟動策略、循環(huán)策略和退出策略,它們分別在啟動時、運行過程中和退出前由系統(tǒng)自動調度運行。

      2、設置策略屬性

      進入運行策略窗口頁,選擇某一策略塊,單擊“策略屬性”按鈕,或按工具條中的“顯示屬性”按鈕,即可彈出“策略塊屬性設置”對話框,設置的項目主要是策略名稱和策略內容注釋。其中的“循環(huán)時間”一欄,是專為循環(huán)策略塊設置循環(huán)時間用的。

      3、組態(tài)策略內容

      無論是用戶創(chuàng)建的策略塊還是系統(tǒng)固有的三個策略塊,創(chuàng)建時只是一個有名無實的空架子,要使其成為獨立的實體,被系統(tǒng)其他部分調用,必須對其進行組態(tài)操作,策略塊所要完成的功能。

      每一個策略塊都具有多項功能,每一項功能的實現,都以特定的條件為前提。MCGS把“條件功能”結合成一體,構成策略塊中的一行,稱為策略行,策略塊由多個策略行構成。策略塊的組態(tài)操作包括

      創(chuàng)建策略行:組態(tài)操作的*步是創(chuàng)建策略行,目的是先為策略塊搭建結構框架。用鼠標單擊窗口上端工具條中的“新增策略行”按鈕(),或單擊鼠標右鍵在彈出右鍵菜單中選擇“新增策略行菜單”,或直接按下快捷鍵“Ctrl+I”,增加一個空的策略行。一個策略塊中多可創(chuàng)建1000個策略行。

      配置策略構件:每個策略行都由兩種類型的構件串接而成,前端為條件構件,后端為策略構件。一個策略行中只能有一個策略構件,但可以有多個條件構件。在MCGS的“策略工具箱”中,為用戶提供了多種常用的策略構件,用戶從工具箱中選擇所需的條件構件和策略構件,配置在策略行相應的位置上。

      設置策略構件屬性:鼠標雙擊策略構件;或者單擊策略構件,按工具條中的“屬性按鈕”,彈出該策略構件的屬性設置對話框。不同的策略構件,屬性設置的內容不同。

      3.8.3.8 組態(tài)結果檢查

      要保證組態(tài)生成的應用系統(tǒng)能夠正確運行,必須保證組態(tài)結果準確無誤。 MCGS提供了多種措施來檢查組態(tài)結果的正確性,希望密切注意系統(tǒng)提示的錯誤信息,養(yǎng)成及時發(fā)現問題和解決問題的習慣。

      1、隨時檢查

      各種對象的屬在組態(tài)過程中,不可避免地會產生各種錯誤,錯誤的組態(tài)會導致各種無法預料的結果,性設置,是組態(tài)配置的重要環(huán)節(jié),其正確與否,直接關系到系統(tǒng)的正常運行。為此,MCGS大多數屬性設置窗口中都設有“檢查(C)”按鈕,用于對組態(tài)結果的正確性進行檢查。每當用戶完成一個對象的屬性設置后,可使用該按鈕,及時進行檢查,如有錯誤,系統(tǒng)會提示相關的信息。這種隨時檢查措施,使用戶能及時發(fā)現錯誤,并且容易查找出錯誤的原因,迅速糾正。

      2、存盤檢查

      在完成用戶窗口、設備窗口、運行策略和系統(tǒng)菜單的組態(tài)配置后,一般都要對組態(tài)結果進行存盤處理。存盤時,MCGS自動對組態(tài)的結果進行檢查,發(fā)現錯誤,系統(tǒng)會提示相關的信息。

      3、統(tǒng)一檢查

      全部組態(tài)工作完成后,應對整個工程文件進行統(tǒng)一檢查。關閉除工作臺窗口以外的其它窗口,鼠標單擊工具條右側的“組態(tài)檢查”按鈕,或執(zhí)行“文件”菜單中的“組態(tài)結果檢查”命令,即開始對整個工程文件進行組態(tài)結果正確性檢查。

      4、工程測試

      新建工程在MCGS組態(tài)環(huán)境中完成(或部分完成)組態(tài)配置后,應當轉入MCGS運行環(huán)境,通過試運行,進行綜合性測試檢查。鼠標單擊工具條中的“進入運行環(huán)境”按鈕,或操作快捷鍵F5,或執(zhí)行“文件”菜單中的“進入運行環(huán)境”命令,即可進入MCGS運行環(huán)境,啟動當前正在組態(tài)的工程,對于要實現的功能進行測試。在組態(tài)過程中,可隨時進入運行環(huán)境,完成一部分測試一部分,發(fā)現錯誤及時修改。

      3.8.3.9 MCGS安全機制

      MCGS系統(tǒng)的操作權限機制和Windows NT類似,采用用戶組和用戶的概念來進行操作權限的控制。在MCGS中可以定義多個用戶組,每個用戶組中可以包含多個用戶,同一個用戶可以隸屬于多個用戶組。操作權限的分配是以用戶組為單位來進行的,即某種功能的操作哪些用戶組有權限,而某個用戶能否對這個功能進行操作取決于該用戶所在的用戶組是否具備對應的操作權限。

      MCGS系統(tǒng)按用戶組來分配操作權限的機制,使用戶能方便地建立各種多層次的安全機制。如:實際應用中的安全機制一般要劃分為操作員組、技術員組、負責人組。操作員組的成員一般只能進行簡單的日常操作;技術員組負責工藝參數等功能的設置;負責人組能對重要的數據進行統(tǒng)計分析;各組的權限各自獨立,但某用戶可能因工作需要,能進行所有操作,則只需把該用戶同時設為隸屬于三個用戶組即可。

      1、定義用戶和用戶組

      MCGS組態(tài)環(huán)境中,選取“工具”菜單中的“用戶權限管理”菜單項,在MCGS中,固定有一個名為“管理員組”的用戶組和一個名為“負責人”的用戶,它們的名稱不能修改。管理員組中的用戶有權利在運行時管理所有的權限分配工作,管理員組的這些特性是由MCGS系統(tǒng)決定的,其它所有用戶組都沒有這些權利。

      在用戶管理器窗口中,上半部分為已建用戶的用戶名列表,下半部分為已建用戶組的列表。當用鼠標激活用戶名列表時,在窗口底部顯示的按鈕是“新增用戶”、“復制用戶”、“刪除用戶”等對用戶操作的按鈕;當用鼠標激活用戶組名列表時,在窗口底部顯示的按鈕是“新增用戶組”、“刪除用戶組”等對用戶組操作的按鈕。按新增用戶按鈕,彈出如下用戶屬性設置窗口,在該窗口中,用戶對應的密碼要輸入兩遍,用戶所隸屬的用戶組在下面的列表框中選擇(注意:一個用戶可以隸屬于多個用戶組)。當在用戶管理器窗口中按“屬性”按鈕時,彈出同樣的窗口,可以修改用戶密碼和所屬的用戶組,但不能夠修改用戶名。

      單擊新增用戶按鈕,可以添加新的用戶名,選中一個用戶時,點擊屬性或雙擊該用戶,會出現用戶屬性設置窗口

      2、系統(tǒng)權限設置

      為了更好的保證工程運行的安全、穩(wěn)定可靠,防止與工程系統(tǒng)無關的人員進入或退出工程系統(tǒng),MCGS系統(tǒng)提供了對工程運行時進入和退出工程的權限管理。

      3、操作權限設置

      MCGS操作權限的組態(tài)非常簡單,當對應的動畫功能可以設置操作權*,在屬性設置窗口頁中都有對應的“權限”按鈕,作為缺省設置,能對某項功能進行操作的為所有用戶,即:如果不進行權限組態(tài),則權限機制不起作用,所有用戶都能對其進行操作。在用戶權限設置窗口中,把對應的用戶組選中(方框內打勾表示選中),則該組內的所有用戶都能對該項工作進行操作。注意:一個操作權限可以配置多個用戶組。

      3、工程安全管理

      使用MCGS工具菜單中工程安全管理菜單項的功能可以實現對工程(組態(tài)所得的結果)進行各種保護工作。該菜單項包括:工程密碼設置;鎖定軟件狗;工程運行期限設置。

      工程密碼:給正在組態(tài)或已完成的工程設置密碼,可以保護該工程不被其它人打開使用或修改。當使用MCGS來打開這些工程時,首先彈出輸入框

       

      要求輸入工程的密碼,如密碼不正確則不能打開該工程,從而起到保護勞動成果的作用。

      鎖定軟件狗:鎖定軟件狗可以把組態(tài)好的工程和軟件狗鎖定在一起,運行時,離開所鎖定的軟件狗,該工程就不能正常運行。隨MCGS一起提供的軟件狗都有一個*的序列號,鎖定后的工程在其它任何MCGS系統(tǒng)中都無法正常運行,充分保護的權利。

      設置工程運行期限:為了方便的利益得到及時的回報,MCGS提供了設置工程運行期限的功能,到一定的時間后,如得不到應得的回報,則可通過多級密碼控制系統(tǒng)的運行或停止。

      MCGS工程試用期限的限制是和本系統(tǒng)的軟件狗配合使用的,簡單地改變計算機的時鐘改變不了本功能的實現。“設置密碼”按鈕用來設置進入本窗口的密碼。有時候,MCGS組態(tài)環(huán)境和工程必須一起交給終用戶,該密碼可用來保護本窗口中的設置,卻又不影響終用戶使用MCGS系統(tǒng)。

      參考文獻

       

        [1].《MCGS工控組態(tài)軟件》  北京昆侖通態(tài)公司

       

      [2].《可編程序控制器教程》溫照方 主編  北京理工大學出版社

       

      [3].《可編程序控制器入門教程》鐘肇新 主編華南理工大學出版社

       

      [4].《過程控制及儀表》  邵裕森 主編 上海交通大學出版社

       

      [5].《組態(tài)軟件MCGS在鍋爐液位控制中的應用》  馬兵智、孫志毅、趙志成

       

      [6].《MCGS組態(tài)軟件在電廠油區(qū)數據采集系統(tǒng)中的應用》 

      附錄A

      MAIN主程序:

            LD     SM0.1

      CALL   initiate

      LD     SM0.0

      CALL   sift

      LDB=   SMB8, 16#19               //檢查EM235擴展模塊是否存在

      R      M0.1, 1

      NOT

      S      M0.1, 1

      LDB=   SMB9, 16#00               //檢查EM235擴展模塊是否錯誤

      R      M0.2, 1

      NOT

      AB=    SMB9, 16#04

      S      M0.2, 1

      LD     M0.1

      O      M0.2

      JMP    0

      LDW=   sy, +1                      //單閉環(huán)手動輸出

      AN     kz

      DTCH   10

      MOVR   u1, AC0

      /R     100.0, AC0

      *R     25600.0, AC0

      ROUND  AC0, AC0

      DTI    AC0, AC0

      +I     +6400, AC0

      MOVW   AC0, AQW0

      LDW=   sy, +2                      //串級手動輸出

      AN     kz

      DTCH   10

      MOVR   u2, AC0

      /R     100.0, AC0

      *R     25600.0, AC0

      ROUND  AC0, AC0

      DTI    AC0, AC0

      +I     +6400, AC0

      MOVW   AC0, AQW0

      LD     kz                           //自動控制 

      ENI

      LDW=   sy, +0

      R      kz, 1

      LD     kz

      EU

      ATCH   INT_0, 10

      LD     kz

      ED

      DTCH   10

      LBL    0

      Initiate初始化子程序:

            LD     SM0.0                        //實驗初始化

      MOVW   +0, sy

      LD     SM0.0                        //中斷

      MOVB   100, SMB34

      ATCH   INT_0, 10

      LD     SM0.0                         //pv1濾波初始化

      MOVW   +0, VW0                     //計數器清零

      MOVW   +128, VW2                   //預置采樣次數

      MOVD   +0, VD10                     //當前采樣值清零

      MOVD   +0, VD14                     //當前采樣和清零

      MOVD   +0, VD18                     //平均值清零

      LD     SM0.0                         ////pv2濾波初始化

      MOVW   +0, VW30                    //計數器清零

      MOVW   +128, VW32                  //預置采樣次數

      MOVD   +0, VD40                     //當前采樣值清零

      MOVD   +0, VD44                     //當前采樣和清零

      MOVD   +0, VD48                     //平均值清零

      Sift濾波子程序: 

            LD     SM0.0

      MOVW   AIW0, VW12                  //放置模擬量輸入值

      LDW>=  VW12, +0                     //檢查輸入信號

      MOVW   +0, VW10                    //把輸入值轉換為雙字

      NOT                            //VD10=模擬量輸入值(當前采樣值)

      MOVW   16#FFFF, VW10

            LD     SM0.0

      +D     VD10, VD14                   //把當前采樣值加到采樣和中

      INCW   VW0                         //采樣計數器值加一

      LDW>=  VW0, VW2                    //若達到采樣次數把采樣和VD1VD18中

      MOVD   VD14, VD18

      ENCO   VW2, AC1                    //計算移位數

      SRD    VD18, AC1               //用移位數實現除法,求采樣平均值

      MOVD   +0, VD14                    //重新初始化,即采樣和清零

      MOVW   +0, VW0                     //采樣計數器清零

      DTR    VD18, VD18                   // 模擬量輸入平均值=VW20

            -R     6000.0, VD18

      /R     26000.0, VD18

      MOVR   dih1, pv1

      *R     VD18, pv1

      LD     SM0.0

      MOVW   AIW2, VW42                  //放置模擬量輸入值

      LDW>=  VW42, +0                     //檢查輸入信號

      MOVW   +0, VW40                     //把輸入值轉換為雙字

      NOT                            //VD40=模擬量輸入值(當前采樣值)

      MOVW   16#FFFF, VW40

      LD     SM0.0

      +D     VD40, VD44                   //把當前采樣值加到采樣和中

      INCW   VW30                         //采樣計數器值加一

      LDW>=  VW30, VW32 //若達到采樣次數把采樣和VD44復制到VD48中

      MOVD   VD44, VD48

      ENCO   VW32, AC1                   //計算移位數

      SRD    VD48, AC1               //用移位數實現除法,求采樣平均值

      MOVD   +0, VD44                     //重新初始化,即采樣和清零

      MOVW   +0, VW30                    //采樣計數器清零

      DTR    VD48, VD48                  // 模擬量輸入平均值=VW50

      -R     6000.0, VD48

      /R     26000.0, VD48

      MOVR   dih2, pv2

      *R     VD48, pv2

      pid0單閉環(huán)子程序:

            LD     SM0.0

      MOVR   e1_1, e1_2

      MOVR   e1, e1_1

      LD     SM0.0                          //求e1

      MOVR   sv1, AC0

      -R     pv1, AC0

      MOVR   AC0, e1

      LD     SM0.0                          //求p1

      MOVR   e1, AC0

      -R     e1_1, AC0

      *R     kc1, AC0

      MOVR   AC0, p1

      LD     SM0.0                          //求i1

      MOVR   e1, AC0

      *R     ts, AC0

      *R     kc1, AC0

      /R     ti1, AC0

      MOVR   AC0, i1

      LD     SM0.0                            //求d1

      MOVR   e1, AC0

      -R     e1_1, AC0

      -R     e1_1, AC0

      +R     e1_2, AC0

      *R     td1, AC0

      *R     kc1, AC0

      /R     ts, AC0

      MOVR   AC0, d1

      LD     SM0.0                               //求det_u1

      MOVR   p1, AC0

      +R     i1, AC0

      +R     d1, AC0

      MOVR   AC0, det_u1

      LD     SM0.0                               //求u1

      MOVR   u1, u1_1

      MOVR   u1_1, AC0

      LDW=   sy, +1

      +R     det_u1, AC0

      LDR>=  AC0, 100.0

      MOVR   100.0, AC0

      LDR<=  AC0, 0.0

      MOVR   0.0, AC0

      LD     SM0.0

      MOVR   AC0, u1

      LD     SM0.0                                //轉換輸出

      MOVR   u1, AC0

      /R     100.0, AC0

      *R     25600.0, AC0

      ROUND  AC0, AC0

      DTI    AC0, AC0

      +I     +6400, AC0

      MOVW   AC0, AQW0

      INT_0中斷子程序:

            LD     SM0.0

      MOVR   ts, AC0

      *R     10.0, AC0

      ROUND  AC0, AC0

      DTI    AC0, AC0

      MOVW   AC0, tim

      LD     SM0.0

      INCW   times

      LDW<=  times, tim

      JMP    0

      LDW>=  times, tim

      MOVW   +0, times

      LDW=   sy, +1                         //調單閉環(huán)子程序

      CALL   pid0

      LDW=   sy, +2                         //調串級子程序

      CALL   pid1

      LBL    0

       

      附錄B

       

      功率損耗 

      +5V DC(從I/O總線) 

      30mA 

      從L+ 

      60mA(帶輸出20mA) 

      L+電壓范圍,第2級或DC傳感器供電 

      20.4~28.8 

      LED指示器 

      24V DC狀態(tài) 
      亮=*,滅=無24V DC電源 

      模擬量輸入特性 

      模擬量輸入點數 

      隔離(現場與邏輯電路間) 

       

      輸入類型 

      差分輸入 

      輸入范圍 
      電壓(單極性) 


      電壓(雙極性) 



      電流 


      0~10V,0~5V, 
      0~1V,0~500mV, 
      0~100mV,0~50mV 
      ±10V,±5V,±2.5V, 
      ±1V,±500mV, 
      ±250mV,±100mV 
      ±50mV,±25mV 
      0~20mA 

      輸入分辨率 
      電壓(單極性) 





      電壓(雙極性) 








      電流 


      12.5μV(0~50mV) 
      25μV(0~100mV) 
      125μV(0~500mV) 
      250μV(0~1V) 
      1.25mV(0~5V) 
      2.5mV(0~10V) 
      12.5μV(±25mV) 
      25μV(±50mV) 
      50μV(±100mV) 
      125μV(±250mV) 
      250μV(±500mV) 
      500μV(±1V) 
      1.25mV(±2.5V) 
      2.5mV(±5V) 
      5mV(±10V) 
      5μA(0~10mA時) 

      模數轉換時間 

      <250μs 

      模擬量輸入響應 

      1.5ms~95% 

      共模抑制 

      40dB,DC to 60Hz 
      EM 235 

      共模電壓 

      信號電壓+共模電壓(必須小于等于12V) 

      數據字格式 
      單極性,全量程范圍 -32000~+32000 
      雙極性,全量程范圍 0~32000 


      -32000~+320000 
      0~32000 

      輸入阻抗 

      大于等于10MΩ 

      輸入濾波器衰減 

      -3db@3.1KHz 

      大輸入電壓 

      30V DC 

      大輸入電流 

      32mA 

      分辨率 

      12位A/D轉換器 

      模擬量輸出特性 

      模擬量輸出點數 

      隔離(現場側到邏輯線路) 

       

      信號范圍 
      電壓輸出 
      電注輸出 


      ±10V 
      0 到 20mA 

      數據字格式 
      電壓 
      電流 


      -32000~+32000 
      0~+32000 

      分辨率,滿量程 
      電壓 
      電流 


      12位 
      11位 

      精度 
      壞情況,0~55℃ 
      電壓輸出 
      電流輸出 


      滿量程的±2% 
      滿量程的±2% 

      典型值,25℃ 
      電壓輸出 
      電流輸出 


      滿量程的±0.5% 
      滿量程的±0.5% 

      設置時間 
      電壓輸出 
      電流輸出 


      100μs 
      2mS 

      大驅動@24V用戶電源 
      電壓輸出 
      電流輸出 


      小 5000Ω 
      大500Ω 

      與本文相關的論文有:五陽煤礦應用閥門案例