摘要:為了提高轉臺伺服系統精度、抗干擾能力和提高可靠性,設計了一種基于磁柵位移傳感器的角度測量裝置。該裝置以嵌入式微處理器STM32F103為核心構建,設計采用磁柵位移傳感器,這種傳感器能將位移信號轉化為兩路具有相位差的脈沖信號,將脈沖信號傳輸至STM32F103進行計數最終將對位移的測量轉化為對角度的測量,通過串口傳送到上位機給出結果顯示實驗結果表明該裝置具有較高的可靠性和測量精度。
關鍵字:磁柵尺;角度測量;信號采集
角度的測量是伺服轉臺系統的一個重要組成部分,目前廣泛應用的角度測量傳感器一般有光電編碼器、光柵傳感器2、正余弦旋轉變壓器等。光柵式傳感器大量程測量精度僅低于激光干涉傳感器,光柵測量技術成熟,精度和分辨率較高,應用較廣泛。但由于機械振動易使光柵尺破碎,光柵尺抗沖擊性、抗振性能不高,光器件的使用壽命短,結構定位組裝復雜,成本較高,而正余弦變壓器雖然構造簡單,但是容易損壞不易維修。文中基于STM32微控制器,應用磁柵位移傳感器設計了一種角度測量裝置4,并且給出其硬件電路設計了及軟件模塊,最后通過實驗對其測量精度和可靠性進行了驗證。
1系統硬件設計及原理
1.1角度測量系統總體設計
角度測量系統硬件電路以ARM處理器為核心,由系統電源電路,傳感器電路,通訊接口電路和主控芯片電路等5部分組成,本系統的硬件總體結構如圖1所示。
1.2 STM32F103微控制器
本系統是高精度的位移測量傳感器的信號處理系統,由于ST提供了完整的開發工具和庫函數,使得用戶方便的訪問STM32的標準外設。因而在本設計中選擇意法半導體ST公司推出的STM32F103微控制器STM32系列的微控制器是由意法半導體公司生產的基于 ARM Cortex--M3內核的微控制器,具有高性能、低成本、低功耗等特點。工作頻率可達70MHz,內置高速存儲器(128 kB Flash,20 kB SRAM),擁有豐富的增強I端口(大部分IO端口可5V兼容)和 USART、SPI、I2S、ADC、DAC等眾多外設功能,提供84個中斷、16級可配置優先級,并且可在-40~105℃的溫度下工作。
1.3磁柵位移傳感器的工作原理
磁柵位移傳感器是一種可將位移轉換為數字脈沖的傳感器-12,這種傳感器由磁柵尺、磁頭組成。當磁頭在尺上面發生位置變化時,編碼器產生周期性的增量脈沖,因此,實現對脈沖的計數就可以完成對位移的測量。編碼器可輸出A,B,Z3個信號,其中A,B兩路信號為相位相差90°的方波信號,Z相為每轉一圈的標志信號,每圈只產生一個脈沖,信號波形圖如圖2所示。
由波形圖可以看出,在一個周期內,相位相差90°的AB兩路信號可以有4種電平組合,分別是下圖的4種組合狀態。當磁頭正向移動時,狀態變化為10>11>01>00,反向移動時,狀態變化為01>11>10>00,并且以此周期性循環,可以看到,無論在正向還是在反向移動的情況下,對于任意一個狀態,它的前一個或后一個狀態是唯一確定的。例如狀態11,在正向移動時,前一個狀態是10,后一個狀態是01,而在反向移動式,前一個狀態是01,后一個狀態是10。因此,可根據A、B相組合電平的變化來判斷磁頭的移動方向和四倍頻的細分計數。
1.4差分信號轉換電路
在系統實驗中,由于要采用磁柵尺作為位移傳感器,而磁柵尺傳感器輸出的是差分信號,因而我們在信號處理系統中集成了差分信號轉換電路,將磁柵尺輸出的差分信號進行轉換后送入下位機,由處理器芯片讀取脈沖信號進行計數得到的數據通過RS232通訊接口送給上位機進行處理顯示。轉換電路如圖3所示。
本設計中采用MAX3095作為傳感器差分信號轉換芯片,MAX3095是美國美信公司生產的四通道RS422/RS485發送器,其采用單5V電源供電,支持熱插拔,具有ESD保護電路,因而能很好的實現光柵輸入的差分信號的轉換,本模塊具體電路原理如圖所示。經過磁柵輸入的3對差分信號(六路)經過阻抗匹配電路后分別送入MAX3095芯片的3個通道,經過芯片接收轉換后,轉變成處理器能夠識別的TTL信號送入STM32進行后續處理。
1.5 RS232串口電路
STM32F103芯片內部集 USART成有3個,因此本系統與上位機通訊通過RS-232串行接口來實現13-141,其結構簡單,使用方便。本設計選用美信公司的MAX3232串口驅動芯片,該芯片是美信公司專門為電腦的RS-232標準接口設計的單電源電平轉換芯片,使用+5V單電源供電,具有片載電荷泵升壓、電壓極性反轉能力和功耗低等特點。內部集成2個RS-232驅動器和2個RS-232接收器。具體電路如圖4所示。
2 軟件設計
在本方案中,編碼器A、B相的信號輸入到STM32微控制器引腳,由兩信號的上升和下降邊沿分別觸發中斷請求,調用 GPIO ReadInput DataBit函數來讀取引腳的輸入值,高電平是1,低電平是0,從而得到A、B相信號組合的編碼值,并根據現組合編碼值的前一個狀態來判斷編碼器是正轉還是反轉,正轉則計數加1,反轉則計數減1。例如,現得到組合狀態值11,如果前一狀態是10,則編碼器正轉,計數加1,如果是01,則相反。通過軟件實現編碼器信號的倍頻鑒相和判斷計數,最后完成角度換算。當前狀態為11的程序流程如圖5所示。
利用STM32較高的性能,實現軟件四倍頻鑒相計數,不但簡化了電路結構,而且使系統開發方便、快捷、更具靈活性。在編碼器相對運動一圈產生的15865個脈沖周期里,總共產生63460個周期性分頻編碼,由此可知,角度變化量△a與計數值n的關系:△a=n(6000/63460),單位為密位。角度在信號處理中需要使用Z相脈沖信號,在Z相脈沖產生中斷時,角度計數清零,從而實現0密位的校正。
3 實驗結果
根據上述方案,完成硬件電路設計和相關軟件的調試。實驗將磁柵尺在一個圓環上繞滿一圈并固定在電機的旋轉軸上,將磁頭固定在圓環上方,最后對角度測量裝置進行角度測量調試,并利用C+builder編寫了上位機程序顯示調試結果,上位機顯示的測量結果如圖6所示。從圖中的結果可以看出本裝置測量精度可以達到0.01密位,并且隨著圓環的直徑增大,精度將會越大
4結論
文中設計了一種基于磁柵位移傳感器的高精度角度測量系統,詳細介紹了系統的測量原理,給出了總體設計電路圖,并通過實驗表明該角度測量系統具有響應速度快、測量精度高等優點,具有很高的研究意義和市場價值。