帶PROFIBUS-DP接口的智能電磁流量計的開發(fā)
當今現(xiàn)場總線技術(shù)的發(fā)展日新月異,應(yīng)用領(lǐng)域也日趨廣泛,從家庭、能源、樓宇,到工業(yè)現(xiàn)場。為了適應(yīng)市場的需要,國內(nèi)外各大公司紛紛推出新一代的、各具特色的智能化流量儀表,其中結(jié)合現(xiàn)場總線技術(shù)的智能電磁流量計的開發(fā)尤為引人注目。PROFIBUS作為目前主流總線之一,包括三種類型:DP、PA和FMS。這三種類型均使用統(tǒng)一的總線訪問協(xié)議,其中P R 0 F I B U S-DP(decentralized periphery)采用經(jīng)過優(yōu)化的高速、廉價通信連接,專為自動控制系統(tǒng)和設(shè)備級的分散I/O之間通信設(shè)計,能滿足分布式控制系統(tǒng)的實時性、穩(wěn)定性和可靠性要求。隨著PROFIBUS-DP系統(tǒng)應(yīng)用領(lǐng)域的日益擴大,用戶及研究部門都有自主研發(fā)或特殊調(diào)試的需求,下面將介紹結(jié)合智能化技術(shù)與現(xiàn)場總線技術(shù),開發(fā)帶PROFIBUS-DP接口的智能電磁流量計。
1 系統(tǒng)總體設(shè)計
常用現(xiàn)場儀表系統(tǒng)的處理任務(wù)簡單,往往使用一個CPU加一系列外圍輔助電路就能達到相應(yīng)的目標功能。采用雙CPU可以根據(jù)系統(tǒng)的總體功能要求進行合理的分工,各自完成不同的控制和處理功能,可以適當?shù)睾喕布娐泛蛙浖Y源的分配,設(shè)計相對獨立,程序的修改和移植也變得容易。此系統(tǒng)采用了雙CPU設(shè)計,如圖1所示。16位單片機MSP430F149是電磁流量計的核心部件,實現(xiàn)信號的采集處理、LCD顯示、存儲及與8位單片機PIC18F4520進行數(shù)據(jù)交換。PIC18F4520和PROFIBUS現(xiàn)場總線專用協(xié)議芯片SPC3是PROFIBUS-DP接口部分的核心部件。PIC18F4520負責與MSP430F149交換數(shù)據(jù)及與SPC3通信等功能的實現(xiàn),SPC3負責把主站送來的數(shù)據(jù)拆包,送往PIC18F4520,同時把PIC18F4520送來的數(shù)據(jù)打包,上傳給主站。
2 系統(tǒng)硬件設(shè)計
如圖1所示,電磁流量計的硬件部分主要由傳感器、電源系統(tǒng)、信號處理電路、勵磁電路、單片機系統(tǒng)和總線接口電路組成。
2.1 傳感器及電源系統(tǒng)
傳感器直接由廠家制作,在此不再贅述。本系統(tǒng)所用電源電壓種類不一,特別設(shè)計流量計專用電源系統(tǒng)。整個系統(tǒng)采用5V供電,而MSP430F149采用3.3V電壓供電??紤]到硬件系統(tǒng)要求電源具有穩(wěn)壓功能和紋波小等特點,另外也考慮到硬件系統(tǒng)的低功耗等特點,因此該硬件系統(tǒng)的3.3V電源部分采用TI公司的TPS76033芯片實現(xiàn)。
2.2 勵磁電路
低頻矩形波勵磁電路一般采用分頻芯片對工頻電源進行降頻處理,再經(jīng)過開關(guān)管進行功率放大,此種電路難以針對梯形波的斜邊進行線性放大,而且勵磁頻率單一,不能通過軟件編程修改勵磁頻率。因此,本系統(tǒng)采用三值梯形波勵磁方式。采用16位D/A轉(zhuǎn)換芯片DAC7731通過電平轉(zhuǎn)換芯片SN74AHC245與MSP430F149單片機的USART通信模塊相連的方式產(chǎn)生勵磁信號。此勵磁信號產(chǎn)生電路,通過MSP430F149單片機的定時器進行分頻,可軟件編程修改勵磁頻率,為電磁流量計選擇不同的勵磁頻率提供了更大的方便。功率放大電路部分,采用互補對稱式功率放大電路。通過運算放大器對勵磁信號電壓放大,兩級互補對稱功率放大電路對勵磁信號電流放大,之后輸入電磁流量計勵磁線圈,作為勵磁電壓。此電路可線性放大梯形波斜邊部分,滿足了梯形波勵磁方式的要求。
2.3 信號處理電路
信號處理電路采用四象限高速高精度乘法器芯片AD835AN來實現(xiàn)線圈內(nèi)的勵磁電流信號與兩電極輸出流量信號相乘,AD835具有很高的差分輸入阻抗,不需外接阻抗變換電路。乘法器輸出信號經(jīng)過放大與電平的提升,再先后經(jīng)過高低通濾波器后進入單片機進行A/D轉(zhuǎn)換。高低通濾波器截止頻率分別為0.33 Hz和126 Hz。
2.4 單片機系統(tǒng)
本測量系統(tǒng)采用TI公司的MSP430F149單片機作為MCU,與晶振輸入模塊、復(fù)位電路、LCD顯示模塊、鍵盤模塊和Microchip公司的PIC18F4520共同構(gòu)成單片機系統(tǒng)。兩個CPU之間通過三極管電路實現(xiàn)串口通信。系統(tǒng)的鍵盤模塊采用獨立按鍵式鍵盤。由3個獨立按鍵分別與3只上拉電阻共同和MSP430的P1.1、P1.2和P1.3相連,并將這三個端口設(shè)置為上升沿中斷使能的方式,利用中斷處理程序來判斷鍵盤輸入。
2.5 PROFIBUS-DP通信接口
PROFIBUS-DP通信接口開發(fā)中使用PIC18F4520作為處理器單元管理通信事務(wù),SPC3協(xié)議芯片則完成數(shù)據(jù)的轉(zhuǎn)換和收發(fā)功能。PIC18F4520與SPC3之間的連接如圖2所示。SPC3接成使用Intel芯片并工作于同步模式,此時片選信號輸入引腳XCS不起作用,接高電平;地址鎖存信號ALE起作用,接處理器RB3,SPC3內(nèi)部地址鎖存器和解碼電路工作。CPU與SPC3通過SPC3的雙口RAM交換數(shù)據(jù),SPC3的雙口RAMS應(yīng)在CPU地址空間統(tǒng)一分配地址,CPU把這片RAM當作自己的外部RAM。CPU采用RD和RB口擴展外部存儲器,RD口作為數(shù)據(jù)線和低8位地址線,RB4、RB1、RB2作為AB8-AB10地址線接ABO-AB2。SPC3的AB3-AB10接地。
SPC3與收發(fā)器連接時用于串行通信的四個引腳分別為XCTS、RTS、TXD和RXD。XCTS是SPC3的清除發(fā)送輸入信號引腳,表示允許SPC3發(fā)送數(shù)據(jù),低電平有效,這里始終接低電平。RTS為SPC3請求發(fā)送信號接收發(fā)器的輸出使能端。RXD和TXD分別為串行接收和發(fā)送端口。為提高系統(tǒng)的抗干擾性,SPC3內(nèi)部線路必須與物理接口在電氣上隔離,此處采用速率可達2 5Mb/s的HCPL7721高速光耦,收發(fā)器采用SN75ALS176,足以滿足本系統(tǒng)的應(yīng)用。
3 系統(tǒng)軟件設(shè)計
3.1 主處理器軟件
本系統(tǒng)主處理器統(tǒng)軟件采用TI公司的430單片機軟件開發(fā)工具-IAR Embedded Workbench作為終端軟件的開發(fā)平臺,編程語言采用以C430。TI公司的430單片機軟件開發(fā)工具專門用于430單片機以實現(xiàn)嵌入式應(yīng)用開發(fā)。包含以下實用工具:具有語法表現(xiàn)能力的文本編輯器、編譯器、匯編器、連接器、函數(shù)庫管理器、實現(xiàn)操作自動化的Make工具和內(nèi)嵌C語言級與匯編級的調(diào)試器C-SPY。
主處理器軟件主要由主程序、鍵盤菜單處理、定時器中斷、三值梯形波勵磁信號產(chǎn)生、A/D采樣、LCD顯示、串口通信等部分組成。主程序流程圖如圖3所示。
3.2 PROFIBUS-DP通信接口
PROFIBUS-DP接口中的SPC3集成了完整的PROFIBUS-DP協(xié)議,因此PIC18F4520不用參與處理PROFIBUS-DP狀態(tài)機。PIC18F4520的主要任務(wù)就是上電后先根據(jù)MSP430的初始化數(shù)據(jù)對SPC3進行初始化,初始化成功后根據(jù)SPC3產(chǎn)生的中斷,對SPC3接收到的、主站發(fā)出的輸出數(shù)據(jù)轉(zhuǎn)存,組織要通過SPC3發(fā)給主站的數(shù)據(jù),并根據(jù)要求組織外部診斷等。
整個程序采用了結(jié)構(gòu)化、模塊化的方法,包括四個部分:主程序一包括了初始化、數(shù)據(jù)輸入輸出和診斷模塊;中斷模塊一包括了參數(shù)分配和配置模塊;子程序模塊一包括對緩沖區(qū)的組織和分配;程序的頭文件一包括程序的宏和變量定義。:PROFIBUS-DP通信接口主程序流程圖見圖4所示。
4 結(jié)束語
本文介紹的、帶PROFIBUS-DP接口的智能電磁流量計,采用雙核技術(shù),簡化了硬件電路和軟件資源的分配,設(shè)計相對獨立,程序的修改和移植更容易,提高了系統(tǒng)的性價比,降低了功耗。用帶SIEMENS公司CP5611卡的工控機作為上位機對智能氧量分析儀的通信功能進行測試的通信速率,最高可達12 Mb/s,通信速率設(shè)為1 Mb/s時數(shù)據(jù)傳輸穩(wěn)定可靠。該系統(tǒng)為實現(xiàn)現(xiàn)場總線儀表的自主開發(fā)提供了重要借鑒,具有廣闊的應(yīng)用前景。