王 艾,徐 冬
(北京七星華創電子股份有限公司集成電路工藝設備研發中心,北京101312)
立式爐是300 mm集成電路制造的重要工藝設備,適用于集成電路制造過程中氧化、退火、薄膜生長等工藝。立式爐本質上是一種半導體工藝熱處理設備,其中作為加熱功率供給單元的電力控制系統的安全性和可靠性直接決定了設備安全性能和工藝性能。因此,電力監測系統是保證立式爐設備安全可靠運行的必要環節。
傳統的電力監控系統中,多通過測量電流、電壓、功率等一系列變送器及測量這些變送器標準輸出信號的輸入模塊作為系統的前端采集裝置。這種設計成本較高,而且現場布線復雜,導致系統可靠性不高。
隨著計算機技術的不斷發展,綜合4C技術的分布式控制系統的產生實現了工業生產過程的集中管理與分散控制。Modbus協議就是其中應用較廣的一種通信協議。通過Modbus協議,上位機可對立式爐設備的電力數據進行現場的實時獲取和保存,保存的電力數據不僅可用于設備的故障診斷,還可用于分析爐體加熱器在各溫度點上的電學特性。
Modbus通信協議是工業控制網絡中用于對自控設備進行訪問控制的主從式通信協議,由Modicon公司開發,在工業控制中得到廣泛應用。它有以下特點:物理接口符合EIA-485規范;組成主從訪問的一主多從控制網絡;通過簡單的通信報文完成對從節點的讀寫操作;通信速率可達115.2 kbps;在主節點輪詢即逐一單獨訪問從節點時,要求從節點返回一個應答信息;主節點也可以對網段上所有的從節點進行廣播通信[2]。

表1 RTU消息幀
Modbus通信協議定義了在這些網絡上連續傳輸的報文幀的每一位,及數據編碼、解碼過程。Modbus通信協議具有兩種報文幀格式:ASCII和RTU(remote terminal unit)報文幀格式。采用ASCII格式的報文以“:”開始,以兩個回車換行符結束,中間的信息為Modbus協議的內容。采用RTU格式的報文則以傳遞一段空閑時間開始,這段時間不短于3.5倍的字符發送時間T,一般取4T,并以同樣4T的標志來表示報文的結束。
一個采用RTU格式的Modbus通信協議的報文格式如表1所示。該報文以T1-T4標志的報文的開始和結束,中間包括地址域、功能域、數據域和CRC校驗域。詳細如下:
(1)地址域:地址域為被查詢的從節點的地址,它所表示的從節點的有效地址范圍是0-247,其中0表示廣播地址。每個從節點的地址必須是唯一的,僅僅被尋址到的從節點(從設備)會響應包含了該地址的查詢。當發送回一個響應,響應中的從機地址數據便告訴了主機哪臺從站正與之進行通信。
(2)功能域:8位功能域的有效編碼為1-FFH,用于說明從節點要完成的功能。例如功能編碼03H為讀數據寄存器(內部字變量),用于讀取從節點的寄存器的值;06H為設置單個寄存器,用于設置從節點的某個寄存器的值。
(3)數據域:數據域包含了從節點執行特定功能所需要的數據或者從節點響應查詢時采集到的數據。這些數據的內容可能是數值、參考地址或者設置值。
(4)校驗域:該域允許主機和從設備檢查傳輸過程中的錯誤。有時,由于電噪聲和其它干擾,一組數據在從一個設備傳輸到另一個設備時在線路上可能會發生一些改變,出錯校驗能夠保證主機或者終端不去響應那些傳輸過程中發生了改變的數據,這就提高了系統的安全性和效率,錯誤校驗使用16位循環冗余的方法(CRC16),整個信息幀以連續的數據位流進行傳輸,CRC校驗從地址域開始對報文的所有數據進行校驗。
Modbus協議決定了每個從節點控制器需要知道各自不同的設備地址,識別主節點按地址發來的消息,決定要產生何種行動。主設備可單獨與從設備通信,也能以廣播方式與所有從設備通信:如果單獨通信,從設備返回一消息作為響應;如果是以廣播方式通信的,則不作任何回應。
從節點的正常應答是發送相同的報文幀,以便讓主節點作確認,從節點的應答幀包括:前導標志碼,從節點地址,功能碼,返回數據,檢驗碼以及幀結束碼。如果有錯誤發生,功能代碼將被修改用于指出回應的消息是錯誤的,同時數據段包含了描述此錯誤信息的代碼,應答信息的檢驗碼將用于讓主設備確認消息內容是否可用[2]。
北京七星華創電子股份有限公司現有的300 mm氧化爐,采用單反應室結構,爐體加熱絲包覆的范圍劃分為多個區段 (Zone A,B,C,D……),各區段有獨立的功率控制器用以控制加熱功率。立式爐電力監測系統硬件結構如圖1所示,采用Modbus協議組成監控網絡,主要包括工控機IPC,RS232/485轉換接口,多路功率控制器。
Modbus標準物理層采用RS232接口,但由于實際應用中強電干擾較大,且是多點連接,因此,功率控制器,采用的是RS485接口;而工控機上配置的是RS232接口,當功率控制器與工控機通訊時,需配置RS232/485轉換接口,進行電平轉換。
系統的軟件設計為上位機(主站)電力監測程序的設計,采用Visual Studio 2005 C#進行程序開發,在程序設計時,需考慮硬件單元(功率控制器)設置的通信參數。本文所涉及的功率控制器采用RTU模式進行數據傳輸,除了設置的通訊地址不同以外(參見圖1),其他通訊參數(波特率,校驗方式等)都必須相同。例如:功率控制器采用的波特率為9.6 kbps,8位數據位,偶校驗,1個停止位,上位機監測程序中的SerialPort類(C#)的屬性設置必須與功率控制器的串口參數設置相一致。
軟件運行后,生成的用戶操作界面如圖2所示,可實現串口的配置、連接,實時顯示多段溫區的電力給定、電力反饋、有效電流、有效電壓和有效功率,可保存多段溫區的電力給定、電力反饋、有效電流、有效電壓和功率數據。注意,此時多路功率控制器的通訊地址分別為 1,2,3,4……,如圖1所示。

圖1 硬件結構

圖2 用戶操作界面
本軟件系統的流程圖如圖3所示,完成以下功能:
(1)開始程序運行,啟動主線程,完成工控機上所有串口的識別、定時器的配置,生成圖形界面,等待下一步操作輸入;
(2)根據硬件的串口連線,選擇工控機上相應的通訊串口,建立連接;
(3)根據輸入指令,設置讀取功率控制器參數寄存器的功能碼;
(4)根據輸入指令,設置讀取的參數寄存器精度;
(5)設置讀取的功率控制器參數寄存器地址,其中控制器參數寄存器地址,并不是在圖形界面上設置,而是直接在程序內部指定,在功率控制器中配置的參數源包括系統給定值、系統反饋值、有效電壓、有效電流,有功功率;
(6)根據輸入指令,啟動參數寄存器的實時讀取、顯示,每2 s參數刷新一遍;
(7)根據輸入指令,啟動數據的保存。使用Microsoft Access數據庫進行數據保存,保存各溫區的電力給定值、電力反饋值、有效電壓、有效電流,有功功率;
(8)根據輸入指令,結束數據的保存;
(9)根據輸入指令,可斷開現有的串口通訊,停止參數寄存器的實時刷新;
(10)根據指令要求在完成電力監測后,安全退出程序。

圖3 軟件流程圖
上述第(6)步的功能實現主要是通過主控機自動(周期性)給各功率控制器發送讀消息幀,經過若干時間片后,主控機主動去讀各路功率控制器返回的響應,然后對讀回的響應進行CRC檢測。若相對于某溫區的功率控制器返回消息的CRC檢測正確,則刷新相應溫區的窗體文本,若CRC檢測不正確,則主控機重新給該溫區的功率控制器發送讀消息幀。程序在每個窗體刷新周期(2 s)內至多給每個溫區的功率控制器發送4次讀消息幀,若連續4次讀上來的消息都不正確,即在這一周期內放棄對該溫區窗體文本的刷新。這里我們采用主動讀消息的機制,而不采用中斷方式,主要是因為采用中斷接收方式,數據流常常不均勻,其中存在空白間隔,導致接收的數據是殘缺不全的,不便于后續的分析處理。
目前,此系統已應用于我公司立式爐設備的電力監測,該系統具有運行可靠、擴展性好、使用方便的特點。尤其是,在立式爐設備升溫過程和恒溫過程中,對電力監測系統保存的電力數據,可進行爐體加熱器電學特性的分析,分析結果在加熱器的設計上(立式爐設備七大核心技術方向之一)具有較高的參考價值。
[1]MODICON,Inc.Modbus Protocol Reference Guide[Z].1996
[2]吳學文,王新光等.基于Modbus通信協議的水閘計算機監控系統[J],計算機工程,2005(13):195-197.