趙迪,張征
(北京七星華創(chuàng)流量計有限公司,北京市 100176)
摘要:本文介紹了基于Profibus-DP現(xiàn)場總線的氣體質(zhì)量流量控制器硬件設(shè)計、軟件設(shè)計及產(chǎn)品測試。用戶可以通過Profibus主站對氣體質(zhì)量流量控制器的安全狀態(tài)、報警選項、軟啟動、瞬時流量和累計流量單位、設(shè)定源和閥控模式等多項參數(shù)進行參數(shù)化配置。并且提供由簡到繁的三種從站組態(tài)方式供客戶選擇。
關(guān)鍵詞:Profibus-DP;氣體質(zhì)量流量控制器;參數(shù)化配置;組態(tài)方式
Design of Gas Mass Flow ntroller based on Profibus-DP fieldbus
Zhao Di, Zhang Zheng
(Beijing Sevenstar Flow ., Ltd., Beijing 100176, China)
Abstract: This paper introduces hardware design, software design and product test of gas mass flow controller based on Profibus-DP fieldbus. Users can use Profibus master station to parameterize multiple parameters such as failsafe state, alarm option, softstart, instantaneous and accumulated flow unit, setpoint source and valve command mode of mass flow controller. It also provides three configuration modes from simple to complex for customers to choose.
Key Words: Profibus-DP; gas mass flow controller; parameter configuration; configuration mode
1 引言
隨著制造自動化和過程自動化中分散化結(jié)構(gòu)設(shè)計數(shù)量的迅速增長,現(xiàn)場總線的應(yīng)用日益廣泛。Profibus是由Siemens等公司組織開發(fā)的一種化的、開放的和不依賴于設(shè)備生產(chǎn)商的現(xiàn)場總線標準,可用于有嚴格時間要求、高速數(shù)據(jù)傳輸?shù)膱龊?,也可用于大范圍?fù)雜通信的場合。既適用于工業(yè)自動化中離散加工過程的應(yīng)用,也適用于流程自動化中連續(xù)和批處理過程的應(yīng)用,現(xiàn)已廣泛應(yīng)用于制造自動化、流程工業(yè)自動化、樓宇自動化以及交通、電力等其他自動化領(lǐng)域。目前世界上許多自動化設(shè)備制造商都為他們生產(chǎn)的設(shè)備提供了Profibus接口,根據(jù)應(yīng)用特點和用戶需要的不同,Profibus現(xiàn)場總線包括Profibus-FMS、Profibus-DP和Profibus-PA這3種主要規(guī)范子集[1]。
氣體質(zhì)量流量控制器(Gas Mass Flow ntroller,簡稱MFC)用于對氣體的質(zhì)量流量進行精密的測量與控制,在半導(dǎo)體集成電路工藝、特種材料學(xué)科、化學(xué)工業(yè)、石油工業(yè)、醫(yī)藥、環(huán)保和真空等各領(lǐng)域的科研和生產(chǎn)中有著重要的應(yīng)用。北京七星華創(chuàng)流量計有限公司的CS200 Profibus MFC正是基于Profibus-DP協(xié)議,以實現(xiàn)其在Profibus-DP工業(yè)控制網(wǎng)絡(luò)中的應(yīng)用。
2 硬件電路設(shè)計結(jié)構(gòu)
Profibus協(xié)議作為開放的、與制造商無關(guān)、無知識產(chǎn)權(quán)保護的標準,原則上在任何微處理器上都可以實現(xiàn),本設(shè)計采用“微控制器MCU+Profibus通信芯片”的解決方案,由協(xié)議芯片實現(xiàn)Profibus-DP的數(shù)據(jù)鏈路層協(xié)議,MCU對協(xié)議芯片進行基本的初始化并進行后續(xù)的數(shù)據(jù)交互,異步串行通信接口完成物理層通信[2]。從硬件設(shè)計結(jié)構(gòu)上來講,MFC主要包括:MCU控制模塊、Profibus-DP智能從站接口模塊、從站地址設(shè)定模塊、傳感器模塊、電磁閥模塊和電源模塊等,產(chǎn)品硬件結(jié)構(gòu)框圖如圖1示。
圖1 產(chǎn)品硬件結(jié)構(gòu)框圖
2.1 MCU控制模塊
MFC的微處理器采用Microchip公司的16位高性能DSP芯片dsPIC30F6012A,它擁有8KB的SRAM,4KB的EEPROM,滿足Profibus-DP與RS-485通信過程中交換數(shù)據(jù)量比較大的特點。144KB高可靠性和穩(wěn)定性的Flash程序存儲器,滿足流量計功能多的特點要求。采用低功耗高速閃存技術(shù),*高工作速度可達30MIPs。該芯片接口類型完備,支持SPI同步串行接口方式,滿足微處理器與VPC3+S協(xié)議芯片間快速通信的要求。
2.2 Profibus-DP總線接口模塊
該部分硬件設(shè)計框圖如圖2所示,Profibus協(xié)議芯片采用VIPA公司為智能Profibus-DP從站提供的芯片VPC3+S,它是Siemens公司的SPC3芯片的更新替代產(chǎn)品,兼容了SPC3的全部功能,可直接與各種微處理控制器連接,以滿足用戶的需要。它支持Profibus-DP協(xié)議中的DP-V0、DP-V1和DP-V2子協(xié)議類型,內(nèi)部集成4KB的雙口RAM,使其能獨立處理更為復(fù)雜的通信數(shù)據(jù)流,支持3.3V和5V電壓源,在功能上更為經(jīng)濟、安全,采用SPI模式實現(xiàn)VPC3+S協(xié)議芯片與MCU主控芯片的通信。VPC3+S芯片主要完成Profibus-DP總線接收數(shù)據(jù),并完成基本數(shù)據(jù)處理,判斷是否是主站對該從站的操作,如果是就把信息存入相應(yīng)的緩沖區(qū)并通知MCU,同時VPC3+S還可以根據(jù)MCU所發(fā)出的指令把從站數(shù)據(jù)傳送給主站。
圖2 Profibus-DP總線接口硬件結(jié)構(gòu)框圖
Profibus-DP協(xié)議的物理層采用RS-485通信的方式,它是一種差動半雙工通信,VPC3+S本身不帶RS-485接口,需要外設(shè)電路來完成RS-485信號的轉(zhuǎn)化。本設(shè)計選用ADM2486芯片作為485通信接口驅(qū)動芯片,它是主站和從站之間的橋梁,一側(cè)通過D型插座與主站連接,另一側(cè)與協(xié)議芯片VPC3+S相連。ADM2486是電氣隔離的高速差分總線收發(fā)器,用于平衡傳輸線的雙向數(shù)據(jù)通信,它自身具有隔離和RS-485收發(fā)能力,隔離電壓*高可達2.5KV,ADM2486數(shù)據(jù)傳輸速率可達20Mbps,滿足Profibus-DP*高傳輸速率12Mbps的要求。MIC5205用來提供穩(wěn)定的5V電壓源,AD809用于監(jiān)控電路電壓,避免在上電、關(guān)斷和掉電時,A、B端總線信號的抖動。
2.3 從站地址設(shè)定模塊
在Profibus-DP現(xiàn)場總線網(wǎng)絡(luò)中,主站可以與多個從站進行通信,主站在數(shù)據(jù)幀中表明要通信的從站地址,通過設(shè)置從站地址,主站就可以自動訪問從站,因此在Profibus-DP網(wǎng)絡(luò)中每個從站都要設(shè)定唯*的地址號。本設(shè)計采用如圖3所示硬件電路實現(xiàn)從站地址的設(shè)定,通過兩個旋轉(zhuǎn)撥碼轉(zhuǎn)換開關(guān)分別確定從站地址的高字節(jié)位和低字節(jié)位,在CP端時鐘脈沖信號的控制下,通過移位寄存器M74HC165的Q7口串行輸入給主控制器。
圖3 從站地址設(shè)定模塊電路結(jié)構(gòu)圖
3 軟件設(shè)計
MFC作為Profibus-DP的從站,軟件上需要等待主站的指令,需要主站對從站進行參數(shù)化報文配置、組態(tài)報文配置,然后才能進入數(shù)據(jù)交換狀態(tài),軟件主循環(huán)的流程圖如圖4所示。其中VPC3初始化部分是在MFC上電初始化時執(zhí)行,其余部分都是在主程序中循環(huán)執(zhí)行。
3.1 VPC3上電初始化
軟件的*一部分為VPC3上電初始化,此部分主要工作包括在MCU中定義VPC3各寄存器名稱與地址并賦初值、復(fù)位VPC3、讀取MFC硬件旋轉(zhuǎn)撥碼開關(guān)并計算從站地址、啟動VPC3、復(fù)位診斷等操作。
3.2 參數(shù)化報文配置
軟件的第二部分為參數(shù)化報文配置,此部分對MFC的參數(shù)進行相應(yīng)的配置。七星華創(chuàng)CS200 Profibus MFC產(chǎn)品的參數(shù)設(shè)置包括安全狀態(tài),即如果通訊中斷,MFC狀態(tài)可選擇(0 = 無影響;1 = 閥關(guān)閉;2 = 設(shè)定為0;3 = 閥全開);各種報警(環(huán)境溫度報警、傳感器漂移報警、閥報警等)的使能;軟啟動設(shè)置(使真實流量按照一定斜率緩慢地接近設(shè)定值);瞬時流量單位設(shè)置(0 = %FS;1 = mL/sec;2 = mL/min;3 = mL/hour;4 = Liter/sec;5 = Liter/min;6 = Liter/hour;7 = M3/sec;8 = M3/min;9 = M3/hour;10 = Ft3/sec;11 = Ft3/min;12 = Ft3/hour);溫度單位設(shè)置(0 = Kelvin;1 = Celsius;2 = Fahrenheit);累計流量的單位設(shè)置(0 = mL;1 = liter;2 = m3;3 = ft3);設(shè)定源選擇(1 = RS485;2 = 0-5Vdc;3 = Profibus);閥控模式選擇等等。
圖4 軟件主循環(huán)的流程圖
3.3 組態(tài)報文配置
軟件的第三部分為組態(tài)報文配置,七星華創(chuàng)CS200 Profibus MFC產(chǎn)品的組態(tài)方式有三種,組態(tài)代碼如表1所示,具體含義如表2~4所示。
表1 CS200 Profibus MFC的三種組態(tài)方式組態(tài)代碼
組態(tài)方式 | 代碼 | 描述 |
Module1 | 0x C1 | 標識符格式;1長度字節(jié),對輸出;1長度字節(jié),對輸入;1個字節(jié)的制造商數(shù)據(jù)。 |
0x 83 | 輸出數(shù)據(jù),4 個字節(jié) (1 個浮點數(shù))。 | |
0x 83 | 輸入數(shù)據(jù),4 個字節(jié) (1 個浮點數(shù))。 | |
0x 01 | 制造商數(shù)據(jù),表示module 1。 | |
Module2 | 0x C1 | 標識符格式;1長度字節(jié),對輸出;1長度字節(jié),對輸入;1個字節(jié)的制造商數(shù)據(jù)。 |
0x 84 | 輸出數(shù)據(jù),5 個字節(jié) (1 個浮點數(shù)+1個字節(jié))。 | |
0x 88 | 輸入數(shù)據(jù),9 個字節(jié)(2 個浮點數(shù)+1個字節(jié))。 | |
0x 02 | 制造商數(shù)據(jù),表示module 2。 | |
Module3 | 0x C1 | 標識符格式;1長度字節(jié),對輸出;1長度字節(jié),對輸入;1個字節(jié)的制造商數(shù)據(jù)。 |
0x 84 | 輸出數(shù)據(jù),5 個字節(jié) (1 個浮點數(shù)+1個字節(jié))。 | |
0x 94 | 輸入數(shù)據(jù),21 個字節(jié)(4 個浮點數(shù)+1個無符號整形+1個字節(jié))。 | |
0x 03 | 制造商數(shù)據(jù),表示module 3。 |
表2 CS200 Profibus MFC組態(tài)方式一的定義
Module1: “out[Setp], in[Flow]” | ||||
輸出 | 描述 | 字節(jié)編號 | 字節(jié)數(shù)量 | 類型 |
Setp | 流量設(shè)定值 | 0…..3 | 4 | 浮點數(shù) |
輸入 | 描述 | 字節(jié)編號 | 字節(jié)數(shù)量 | 類型 |
Flow | 流量檢測值 | 0…..3 | 4 | 浮點數(shù) |
表3 CS200 Profibus MFC組態(tài)方式二的定義
Module2: “out[Setp,CMD], in[Flow,Tot,CMD]” | ||||
輸出 | 描述 | 字節(jié)編號 | 字節(jié)數(shù)量 | 類型 |
Setp | 流量設(shè)定值 | 0…..3 | 4 | 浮點數(shù) |
CMD | 命令 | 4 | 1 | 無符號字節(jié) |
輸入 | 描述 | 字節(jié)編號 | 字節(jié)數(shù)量 | 類型 |
Flow | 流量檢測值 | 0…..3 | 4 | 浮點數(shù) |
Tot | 累計流量值 | 4…..7 | 4 | 浮點數(shù) |
CMD | 命令 | 8 | 1 | 無符號字節(jié) |
表4 CS200 Profibus MFC組態(tài)方式三的定義
Module3: “out[Setp,CMD], in[Setp,Flow,Temp,Tot,Valv,CMD,]” | ||||
輸出 | 描述 | 字節(jié)編號 | 字節(jié)數(shù)量 | 類型 |
Setp | 流量設(shè)定值 | 0…..3 | 4 | 浮點數(shù) |
CMD | 命令 | 4 | 1 | 無符號字節(jié) |
輸入 | 描述 | 字節(jié)編號 | 字節(jié)數(shù)量 | 類型 |
Setp | MFC的真實流量設(shè)定值 | 0…..3 | 4 | 浮點數(shù) |
Flow | 流量檢測值 | 4…..7 | 4 | 浮點數(shù) |
Temp | 溫度 | 8….11 | 4 | 浮點數(shù) |
Tot | 累計流量值 | 12…15 | 4 | 浮點數(shù) |
Valv | MFC閥電流值 | 16…19 | 4 | 無符號整形 |
CMD | 命令 | 20 | 1 | 無符號字節(jié) |
3.4 數(shù)據(jù)交換
軟件的第四部分為數(shù)據(jù)交換,需要將主站發(fā)給MFC的數(shù)據(jù),包括流量設(shè)定值、CMD命令讀出并讓MFC執(zhí)行相應(yīng)指令。MFC發(fā)給主站的數(shù)據(jù)包括MFC的真實流量設(shè)定值、流量檢測值、溫度、累計流量值、MFC閥電流值、CMD命令,這些數(shù)據(jù)也需要根據(jù)三種不同的組態(tài)方式發(fā)送給主站。此外還需要處理診斷信息,如果有診斷事件發(fā)生,MFC需要將診斷信息發(fā)送給主站。
4. 樣機測試
基于以上部分硬件和軟件的設(shè)計,使用Step7軟件對七星華創(chuàng)CS200 Profibus MFC進行測試。
4.1 MFC組態(tài)及輸入輸出數(shù)據(jù)測試
當將GSD文件拖到總線上時將彈出如圖5所示的提示對話框,三種組態(tài)方式任選一種,之后出現(xiàn)如圖6所示的Step7總線示意圖。在三種組態(tài)方式下分別測試的輸入輸出數(shù)據(jù)如圖7所示,可以看出在三種組態(tài)方式下MFC均可以正常工作。
圖5 提示對話框
圖6 Step7總線示意圖
圖7 三種組態(tài)方式下MFC的輸入輸出數(shù)據(jù)
4.2 參數(shù)化配置測試
在圖6中雙擊MFC圖標,在彈出的屬性對話框中找到Parameter Assignment選項卡,如圖8所示,此處可以對MFC的各種參數(shù)進行設(shè)置,編譯下載后由Profibus主站通過參數(shù)化報文發(fā)送給MFC。以8中圈出的軟啟動項為例,將“Softstart selection”設(shè)置為Enabled來激活軟啟動功能,“Softstart data”設(shè)為20,表示每秒流量變化滿量程的20%,然后通過圖9所示的Profibus變量表分別給出流量設(shè)定信號20%FS——FS——20%FS變化,同時用CS上位機軟件監(jiān)控實際的流量檢測值如圖10所示,可以看出當流量設(shè)定變化時,實際流量以每秒滿量程的20%來變化,軟啟動功能工作正常。
圖8 MFC的參數(shù)設(shè)置
圖9 MFC的變量表
圖10 MFC軟啟動測試
5. 結(jié)束語
本文以dsPIC30F6012A為MCU,以VPC3+S為Profibus-DP從站芯片,設(shè)計了一種基于Profius-DP現(xiàn)場總線的MFC,可以實現(xiàn)對MFC的安全狀態(tài)、報警選項、軟啟動、瞬時流量和累計流量的單位、設(shè)定源和閥控模式等多項參數(shù)進行參數(shù)化配置,并且可以提供由簡到繁的三種不同從站組態(tài)方式供客戶選擇,方便客戶靈活配置。經(jīng)過批量產(chǎn)業(yè)化驗證,證明七星華創(chuàng)CS200 Profibus MFC是一款可以滿足Profius-DP總線要求的成熟可靠工業(yè)領(lǐng)域流量測量與控制產(chǎn)品。
參考文獻
[1] 侯維巖, 費敏銳. PROFIBUS協(xié)議分析和系統(tǒng)應(yīng)用[M]. 北京:清華大學(xué)出版社, 2006.12
[2] 梁濤,楊彬,岳大為. Profibus現(xiàn)場總線控制系統(tǒng)的設(shè)計與開發(fā)[M]. 北京:國防工業(yè)出版社,2013.6