張強慶,張夢翔,張 霞,胡劍凌 (蘇州大學 電子信息學院,江蘇 蘇州215006) 設計了一套基于磁致伸縮原理且支持Profibus-DP總線通信協(xié)議的位移測量系統(tǒng)。系統(tǒng)采用ARM+FPGA的架構(gòu),F(xiàn)PGA實現(xiàn)激勵信號產(chǎn)生、回波信號檢測及接口控制等功能,ARM實現(xiàn)系統(tǒng)的主控、位移的計算、位移的非線性和溫度補償、通信控制等功能。測試結(jié)果表明,所設計的位移測量系統(tǒng)能良好地支持Profibus-DP總線協(xié)議,位移傳感器分辨率可達到10 μm,測量精度達到±0.1 mm,溫漂控制在預定范圍內(nèi)。系統(tǒng)運行穩(wěn)定,抗干擾能力良好,達到了設計要求。 磁致伸縮;位移傳感器;Profibus-DP協(xié)議 中圖分類號:TN913;TH711 文獻標識碼:A DOI:10.16157/j.issn.0258-7998.170747 中文引用格式:張強慶,張夢翔,張霞,等. 基于Profibus-DP總線的位移傳感器設計[J].電子技術應用,2017,43(10):70-73,77. 英文引用格式:Zhang Qiangqing,Zhang Mengxiang,Zhang Xia,et al. Design of displacement transducer based on Profibus-DP[J].Application of Electronic Technique,2017,43(10):70-73,77. 0 引言 測量技術是現(xiàn)代工業(yè)生產(chǎn)和科學研究中必不可少的一項技術,其中基于磁致伸縮效應的位移測量技術因其穩(wěn)定性好、量程大以及便于安裝維護等優(yōu)點,被廣泛應用于各種民用和軍用領域。同時,隨著信息技術的發(fā)展,工業(yè)控制系統(tǒng)正朝網(wǎng)絡化、分散化和智能化方向發(fā)展,現(xiàn)場總線因其所具有的抗干擾能力、數(shù)字通信、高環(huán)境適應性等特點,良好地滿足了此趨勢要求。 Profibus總線技術由德國SIEMENS公司于1987年提出,具有統(tǒng)一總線標準、傳輸速度快、對復雜系統(tǒng)適應性強以及應用廣、可實現(xiàn)“即插即用”的特點。其中ProfibusDP是一種高速的低成本通信連接,用于設備及控制系統(tǒng)與分散式I/O設備間的通信,在工業(yè)現(xiàn)場應用最廣泛[1]。 本文設計了一種基于Profibus-DP協(xié)議的位移傳感器,采用ARM+FPGA架構(gòu),實現(xiàn)了基于磁致伸縮原理的位移測量,并通過Profibus-DP協(xié)議與主站進行位移數(shù)據(jù)傳輸。 1 系統(tǒng)設計 本文所設計的位移傳感器基于磁致伸縮原理,系統(tǒng)通過產(chǎn)生一定周期的激勵脈沖激勵波導絲,當激勵波遇到位移測量處的永久磁鐵的磁場時將產(chǎn)生磁致伸縮效應,所產(chǎn)生的扭轉(zhuǎn)波將沿著波導絲以固定的速度傳播,通過在近端檢測扭轉(zhuǎn)波和激勵波的時間差即可以實現(xiàn)位移的測量[2]。磁致伸縮位移測量系統(tǒng)工作原理如圖1所示。 本文設計的傳感器電路主要包括激勵脈沖發(fā)生模塊、回波接收模塊、回波檢測和測量模塊、位移計算和補償模塊、Profibus-DP總線通信模塊、主控模塊等。其中主控處理器選用ST公司的基于ARM Cortex-M3[3]內(nèi)核的STM32F103CB完成系統(tǒng)主控、位移計算和補償?shù)裙δ埽籄ctel公司的A3P060 FPGA作為高速單元實現(xiàn)高精度的回波檢測和測量;Profichip公司的VPC3+S作為總線協(xié)議芯片實現(xiàn)基于Profibus-DP總線協(xié)議的位移數(shù)據(jù)傳輸。位移傳感器系統(tǒng)框圖如圖2所示。 系統(tǒng)工作時,A3P060按照設定的周期T控制激勵脈沖發(fā)生模塊產(chǎn)生激勵脈沖,激勵脈沖電流將產(chǎn)生環(huán)向磁場并沿著波導絲傳播,遇到待測量位置磁鐵的磁場時,產(chǎn)生磁致伸縮效應,波導絲將產(chǎn)生機械扭轉(zhuǎn),從而形成扭轉(zhuǎn)波沿波導絲傳播,在近端被回波檢測裝置轉(zhuǎn)換為電信號送入回波接收模塊中處理?;夭ń邮漳K會對信號進行濾波和放大處理后送入比較器,并由A3P060完成回波信號的時間檢測。A3P060將檢測得到的時間信息通過SPI接口發(fā)送至處理器STM32F103CB,STM32F103CB利用數(shù)據(jù)處理和位移計算算法對采集到的時間信息進行位移計算、溫度補償以及位移非線性補償處理后,最后將計算的位移經(jīng)SPI接口傳送至Profibus-DP通信模塊VPC3+S,完成與主站的數(shù)據(jù)交換。 系統(tǒng)設計中采用RS485總線作為Profibus-DP的物理層接口,總線接口線路均通過光電隔離模塊連接到DP總線,以保證數(shù)據(jù)的可靠通信。 溫濕度傳感器選用DHT11數(shù)字溫濕度傳感器,采用單線雙向制,由STM32F103CB主動讀取傳感器的數(shù)據(jù)信息。 2 Profibus-DP協(xié)議實現(xiàn) Profibus-DP總線協(xié)議集成了ISO/OSI模型的物理層、數(shù)據(jù)鏈路層,并根據(jù)實際需求加入用戶層。一個DP系統(tǒng),最多支持使用126個站點,各站點賦予唯一的邏輯地址。DP系統(tǒng)采用令牌控制+分時輪詢的Token_Passing主從輪詢協(xié)議,兼具分散式和主從式控制機制特點,特別適合對反應時間、可靠性、網(wǎng)絡負荷有特殊要求的通信。 本系統(tǒng)選用VPC3+S實現(xiàn)Profibus-DP總線協(xié)議,采用SPI接口實現(xiàn)VPC3+S與STM32F103CB的通信。VPC3+S是完整集成Profibus-DP協(xié)議的通信芯片,支持數(shù)據(jù)傳輸速率達到12 Mb/s,在系統(tǒng)中完成地址識別、處理通信中的信息、數(shù)據(jù)安全序列以及DP通信協(xié)議的處理等任務。 3 軟件設計 3.1 主流程 主流程主要進行系統(tǒng)及各模塊的初始化以及數(shù)據(jù)處理和位移計算,流程圖如圖3。 上電時,首先系統(tǒng)初始化,設置STM32F103CB工作頻率。接著對GPIO、SPI等外設進行初始化操作,點亮LED工作指示燈。再對通信芯片VPC3+S進行初始化和配置操作,然后不斷查詢數(shù)據(jù)準備好標志位。STM32F103CB通過SPI中斷接收時間數(shù)據(jù),主程序?qū)夭ǚ逭?、時間數(shù)據(jù)濾波,再計算位移并對位移結(jié)果進行溫度補償和非線性補償。最后,STM32F103CB通過SPI中斷發(fā)送位移結(jié)果到通信芯片VPC3+S。VPC3+S將位移數(shù)據(jù)封裝成Profibus-DP幀格式,發(fā)送到RS485總線上。 3.2 位移計算模塊 FPGA將時間數(shù)據(jù)通過SPI發(fā)送到STM32F103CB,如果有符合條件的回波峰,選出并計算該峰上升沿和下降沿的平均值,然后將該平均值送入數(shù)據(jù)濾波處理函數(shù)進行去極值平均處理,提高數(shù)據(jù)穩(wěn)定性,最后將處理后的位移值通過SPI發(fā)送給VPC3+S通信芯片。位移計算流程圖如圖4。 選取峰的原則為:若最高級幅值有符合條件的峰,則取最高級幅值的峰,否則取次高一級幅值的峰,以此類推;若最高一級幅值符合條件的峰不止一個,則取前面的峰。取最大一級幅值對應的上升沿和下降沿的時間平均值作為當前回波峰的時間數(shù)據(jù)。 系統(tǒng)的時間數(shù)據(jù)采用去極值平均濾波,隨后系統(tǒng)對數(shù)據(jù)進行去抖動處理、溫度補償和非線性補償處理,得到最終的延時數(shù)據(jù),數(shù)據(jù)乘以波速得到位移數(shù)據(jù)。 3.3 VPC3+S通信模塊 實現(xiàn)Profibus-DP主從站通信過程,首先要對從站VPC3+S進行初始化[4]。主要內(nèi)容包括:中斷及功能寄存器值配置、從站地址值設定、看門狗設置、內(nèi)部空間計算、緩沖區(qū)分配等。初始化流程如圖5所示。 從站系統(tǒng)經(jīng)過初始化操作和使能,通過主站確認信息進入工作狀態(tài),與主站進行循環(huán)數(shù)據(jù)交換。從站判斷主站是否有數(shù)據(jù)輸出,有則讀取,否則可以直接將采集到的現(xiàn)場數(shù)據(jù)主動地發(fā)送給主站,如此循環(huán)。同時從站可以及時響應主站的參數(shù)化、組態(tài)、修改地址等中斷請求。 4 系統(tǒng)調(diào)試與測試 從站搭建調(diào)試完成,構(gòu)建完整通信系統(tǒng)還需主站。本設計使用瑞典HMS工業(yè)網(wǎng)絡有限公司提供的Anybus-M系列板卡AB5030主站模塊。 本文對系統(tǒng)的溫漂性能[5]進行了測試,圖6(a)和圖6(b)分別給出了同一個組件在隨機選取位置升溫和降溫情況下測得的溫漂結(jié)果。測試時保持測量位置不變,改變環(huán)境溫度,測得相應的位移信息。圖中橫坐標為溫度,縱坐標為測量得到的位移,實線為補償前的,虛線為補償后的。由圖可見,在溫漂補償前,在60 ℃的大溫差范圍內(nèi),位移溫漂分別達到3 mm和2 mm左右,采用溫度補償算法后溫漂降低到0.5 mm和0.3 mm左右,滿足產(chǎn)品(6 μm+5 ppm×L)/℃的溫漂要求,其中L為組件長度。 圖7(a)和圖7(b)是位移精度測試圖,圖中橫坐標為光柵尺測得的位移,縱坐標為本系統(tǒng)測試得到的位移與光柵尺測得位移的誤差值。圖7(a)為未非線性位移補償前的測量誤差,圖7(b)為補償后的測量誤差。由圖可知,經(jīng)補償后在整個量程范圍內(nèi),測量誤差控制在±0.1 mm范圍內(nèi),滿足系統(tǒng)精度的要求[6]。 5 總結(jié) 本文提出了基于Profibus-DP總線的位移傳感器設計方案,采用ARM+FPGA的系統(tǒng)架構(gòu)將位移測量轉(zhuǎn)化為時間測量。測量結(jié)果表明,該位移傳感器分辨率達到10 μm,通過設計溫漂補償算法和非線性位移補償算法,測量精度達到±0.1 mm,滿足設計要求。系統(tǒng)采用Profibus-DP總線,實現(xiàn)了位移傳感器網(wǎng)絡化、智能化的要求。實踐表明,將該位移傳感器應用在工業(yè)機床中,運行穩(wěn)定,測量結(jié)果準確,抗干擾能力強。 參考文獻 [1] 劉強,甘永梅,王兆安.PROFIBUS-DP現(xiàn)場總線通訊接口的開發(fā)[J].電子技術應用,2001(9):39-41. [2] 蔣愷.基于ARM的磁致伸縮位移傳感器的設計與實現(xiàn)[D].蘇州:蘇州大學,2012. [3] 宋巖.ARM Cortex-M3權威指南[M].北京:北京航空航天大學出版社,2009. [4] ZHANG P,SHI Y.A design of slave station interface circuit of Profibus-DP[C].Computer Science and Service System(CSSS),2011 International Conference on.IEEE,2011:1927-1930. [5] 李叢珊,姜印平.一種磁致伸縮位移傳感器的優(yōu)化設計方法[J].傳感技術學報,2014(9):1202-1207. [6] SECO F,MARTIN J M,JIMENEZ A R.Improving the accuracy of magnetostrictive linear position sensors[J].IEEE Transactions on Instrumentation & Measurement,2009,58(3):722-729. |
|