鋼管精整生產線中有一道工序,要對每根鋼管的長度進行測量。目前在用的鋼管自動測長系統基本可以分為兩種:一種是使用推鋼裝置將到位靜止的鋼管前推一定的距離,通過與推鋼裝置同步旋轉的編碼器和按順序安裝的光電傳感器來計算鋼管長度;另一種是采用在線測長,即通過旋轉輥道帶動鋼管軸向平移,利用壓在鋼管上的摩擦輪的運動帶動脈沖編碼器,并結合光電傳感器來計算鋼管長度。
本研究分析了在線測長的測量原理和物理實現,以FPGA作為中央處理器,實現系統的高集成度;采用線陣CCD器件TCDl206SUP作為光電傳感器,實現對鋼管長度高精度的測量,并通過RS-485通信實現測量結果的傳輸,增強了系統的遠程控制性能和資源共享。
1 系統的測量原理
在衡鋼初軋廠被測對象為130×130連軋坯,這種坯的總長在30~40 m之間,溫度在1 000℃左右。要求實時測量出總長,再用計算機實時對此進行最佳配尺并指導剪切。此外,還要求記錄剪切后的段長結果。針對上述要求,本文采用圖l所示的測量方案。
圖中:K1和K2是兩組光電開關,CCDl用來測量鋼坯的總長,CCD2用來測量鋼坯的段長,當鋼坯切頭后碰到光電開關Kl時,用CCDl相機測出鋼坯的尾部長度為X0。假設Kl到CCDl像機測量視場的左邊緣為L0,則總長為Ln+X0。測出總長后,經過計算機配尺后,由CCD2控制剪切長度,通過CCD2測出段長,當鋼坯的頭部碰上K2時,CCD2開始測量。假設CCD2測出的長度為X1,K2和剪口之間的距離為L1,則段長即為L1+X1,段長是在線實時測量、實時顯示的。測量X0,X1的過程是這樣的:由于測量對象為熱軋鋼坯,溫度在l 000℃左右,本身就是一個發光體。因此測量對象無需外用光源照明,光電開關采用主動式工作,當鋼坯運行擋住光電開關發射的信號,光電開關信號就通過測量控制板產生外部中斷信號,向計算機申請外部中斷,控制CCD攝像機進行數據采集,對采集結果進行濾波后,進行二值化處理,并進行一系列的標定、處理,即可得到被測鋼坯的長度。
2 系統組成及各部分功能
該測量系統主要由光源、CCD傳感器、CCD驅動電路、FPGA可編程器件、信號調理電路、LCD顯示電路、RS-485通信電路以及鍵盤輸入電路等部分構成,其組成框圖如圖2所示。
1)FPGA(EP3C) FPGA是該系統的核心部分,一方面生成CCD驅動信號,控制CCD傳感器完成數據的采集,另一方面濾波計算經調理電路A/D轉換后輸入信號,實現數據處理。然后通過控制LCD顯示電路和RS-485通信電路實現數據的顯示與傳輸。若有需要,還可以擴展其功能,譬如當段長滿足配尺長度時,控制剪刀進行剪切,并記錄剪切段長。
2)CCD傳感器驅動電路 該驅動電路是CCD器件應用中的關鍵技術之一,主要是為了生成滿足器件工作時的驅動時序脈沖,本系統采用FPGA實現對線陣CCD器件TCDl206SUP的驅動。
3)信號調理電路 傳感器與微處理器之間的轉接部分,由于傳感器采集到信號一般能量弱,干擾強,且為模擬信號,所以調理電路的主要功能是對信號進行濾波、放大以及A/D轉換等處理。
4)LCD顯示電路 實現數據的顯示功能,使操作人員能了解實時測量數據,并對其作出相應處理。
5)RS485通信電路 現場的測量儀器和上位機的通訊距離較遠,所以,該系統采用RS-485通信。當前工業現場總線中以RS-485使用最為普遍,這種網絡結構因硬件設計簡單、控制方便、成本低廉、通信速率高等優點而應用廣泛。
3 系統各部分功能實現
3.1 CCD驅動電路
該驅動電路選用獨立脈沖源。由晶體振蕩器構成時鐘發生電路,輸出頻率為4 MHz的時鐘脈沖,經4分頻器得到頻率為l MHz的時鐘脈沖,再經脈寬調制器合成占空比為1:3的復位脈沖φR,時鐘脈沖φ1為0.5MHz,由脈沖信號8分頻得到,φ2由φ1反相產生,如圖3所示。
3.1.1 分頻器的實現
該設計需要對4 MHz的時鐘脈沖分別進行4分頻和8分頻,在FPGA設計中,分頻器可采用圖形輸入設計,運用觸發器或計數器來實現不同制式的分頻;也可運用VHDL代碼輸入通過不同的算法實現設計。
3.1.2 脈寬調制器的實現
脈寬調制器主要是實現脈沖信號的占空比,由TCDl206SUP驅動時序圖中可以得CCD的復位脈沖RS的頻率為1 MHz,占空比為l:3。實現1:3調制方法很多,可以采用VHDL有限狀態機(FSM)進行設計,設定SO、S1、S2 3種不同的狀態,有效脈沖到達時,狀態機由SO依次轉換到S2。在S2狀態時,狀態機輸出為高電平“1”,其他狀態輸出低電平“O”,從而實現占空比1:3調制。在本系統的設計中,采用QuartusⅡ的圖形輸入設計方式。運用兩輸入信號相異或來實現。
3.1.3 脈沖信號發生器、反相器的實現
脈沖信號發生器由晶體振蕩器構成,輸出頻率為4 MHz的時鐘脈沖,作為FPGA的外部時鐘,而反相器則可以用一非門電路就可以實現。
把上述各部分所產生的symbol用QuartusⅡ提供的Graphic Editor編輯連接起來。進行整體模塊仿真,其結果如圖4所示。從仿真結果看,達到設計要求。
3.2 信號調理電路
信號調理器是測試系統的重要部分,它在數據采集系統之前對傳感器輸出信號進行調理,從而提高了數據采集系統的性能和可靠性。常用的調理內容主要有放大、隔離、濾波、通道切換和直接傳感器調理等。根據設計要求,本信號調理電路主要是將CCD傳感器的信號進行放大,隔離和濾波,考慮到工業應用系統中采集的信號弱、干擾大,頻率低等特點,放大電路采用由兩片AD526構成的程控放大電路(PGA)和美國BB公司生產的IS0130隔離放大電路兩部分組成,具有良好的暫態抗擾性和優良的抗離頻噪聲性能等優點,能有效地抑制共模干擾電壓,FP-GA通過對SWO、SWl和SW2的控制,改變放大器的放大倍數,提高測量的靈敏度;A/D轉換器則選用AD770l,AD7701是單片16位A/D轉換電路,僅為0.001 5%的線性誤差,采用LC2工藝技術制造,內置自校準電路,串行輸出接口,可方便地與單片機配接。同時具有功耗低、精度高、抗干擾能力強等特點,適合于在要求精度較高的儀器儀表、秤重計量、參數檢測、數據采集和其他測量設備;濾波電路則利用FPGA的可編程功能,生成FIR濾波器內核,實現對信號的濾波處理。信號調理原理圖如圖5所示。
3.3 RS-485通信的實現
RS-485作為一種串行通信的接口,具有傳輸距離長、速度較高、電平兼容性好、使用靈活方便、成本低廉和可靠度高等優點,在智能管理、在線控制、地質勘探等許多領域都有著廣泛的應用。RS-485收發器分別采用平衡發送和差分接收,即在發送端驅動器將TTL電平信號轉換成差分信號輸出,在接收端接收信號將差分信號變成TTL電平。在RS-485接口中一根線定義為A,另一根線定義為B,有一個信號地C和一個“使能”端,在“使能”端控制發送驅動器與傳輸線的切斷與連接。當“使能”端起作用時,發送驅動器處于高阻狀態,稱作“第三態”,即它是有別于邏輯“l”與“O”的第三態。RS-485具有較強的抑制共模干擾的能力和較高的接收器靈敏度,能檢測200 mV的電壓,因此數據傳輸距離可達1 km以外。
RS-485接口連接器一般采用DB9的9芯插頭座,與智能終端RS-485接口采用DB9孔。最簡單的RS-485通信線電路電纜由兩條信號線路組成,接口一般采用屏蔽雙絞線傳輸。RS-485與FPGA的接口電路如圖6所示。
4 系統的軟件實現
該系統以Aherla公司的EP3C25E1448CN作為中央處理器,整個測量過程主要包括初始狀態(Initialization)、數據采集(Data_Sample)、數據處理(Data_Processing)、數據顯示(Data_Display)和數據傳輸(Data_Transfers)等5種不同的狀態??衫糜邢逘顟B機方法進行設計,其狀態轉換圖如圖7所示。通過開發工具QuartusⅡ對各模塊的VHDL源程序及頂層電路進行編譯、邏輯綜合,電路的糾錯、驗證、自動布局布
線及仿真等各種測試,最終將設計編譯的數據下載到芯片中。
5 結論
本系統以可編程邏輯器件作為開發平臺處理數據,高精度的CCD器件實現數據采集,RS-485通信完成數據的傳輸,使整個系統具有集成度高,易于調試,測量準確度高,易于實現遠程控制和信息資源共享的特點,具有一定的開發潛力。