數控工具機在加工過程中,熱誤差是因溫度上升引起的加工誤差。據統計,在精密加工和超精密加工中,由於熱變形引起的加工誤差佔總加工誤差的50%~70%。目前,有兩類方法可以用來減小工具機的熱誤差。一是通過改進工具機結構設計方法,直接減小熱誤差,但是會大大提高成本。二是通過建立熱誤差模型進行補償的方法。
本文引用地址:http://www.eepw.com.cn/article/201612/334132.htm因此本文設計的主要目的是,在生產車間中對數控工具機的主要部件進行實時多點溫度採集,採集硬體電路主要包括:溫度傳感器,放大濾波,A/D轉換,下位機控制,串口通信等功能;採集通道數>=4,採集溫度精度:0.5度,溫度範圍:0~40度。上位機對採集的溫度數據進行受熱分析,並顯示溫度隨時間的變化趨勢,並對加工的熱變形誤差進行計算和補償。
1 系統整體設計
設計的整體框圖如圖1所示。主要任務分為上位機的設計和下位機設計兩個大模塊。其中,下位機主要是硬體電路的設計和C語言程序的編寫。用電壓輸出型溫度傳感器TC1047來實現四路溫度的實時監測。將溫度傳感器輸出的電壓,通過RC濾波電路,將50 Hz以上的信號給予濾除,再經過運算放大器OP07組建的放大電路對濾波後的電壓信號進行放大,使用兩片ADC0832將四路放大的模擬信號轉化為數位訊號。主控晶片STC89C52將A/D轉換的數字量經過基於MAX232晶片的串行通信方式,發送到用LABVIEW軟體編寫的上位機,上位機將接收到的數據進行處理和顯示,顯示溫度隨時間的變化曲線以及用顏色的淺深來表示溫度的高低。上位機分為兩個面板,一個為實時數據顯示面板,另一個為歷史數據讀取顯示面板,可以實現實時數據採集,同時也可以讀取和分析歷史數據。設計的整體框圖如圖1所示。
1.1 運算放大電路
單通道放大電路原理圖如圖2所示。設計採用運算放大器OP07作為主晶片組建電壓放大電路,放大經過RC低通濾波器電路後的電壓信號。OP07晶片是一種低噪聲,非斬波穩零的雙極性運算放大器集成電路。由於OP07具有非常低的輸入失調電壓,所以OP07在很多應用場合都不需要額外的調零。OP07同時具有輸入偏置電流低和開環增益高的特點。這種低失調電壓、高開環增益的特性使得OP07特別適用於高增益的測量設備和放大傳感器輸出的信號。
溫度傳感器TC1047在0℃~40℃的電壓輸出範圍為0.5 V~0.9 V,每10 mV變化一度,精度要求為0.5℃。而採用的是8位的A/D轉換,最大能分辨20 mV電壓變化,放大器的放大倍數為5即可滿足要求。設計要求能實時快速地採集溫度的變化,對採集的速度有較高的要求,不能通過模擬開關來分時放大每一通道的電壓信號,而是每個通道都有各自的放大電路,這樣就可以大大提高溫度採集的速度。
如上圖2所示為三運放組成的差分放大電路,其中U9和U10都是組成電壓跟隨器,用於增大輸入阻抗減小輸出阻抗。U10的管腳3輸入溫度傳感器的輸出電壓,U11用於將電壓進行差分放大。需要根據要求計算各電阻的參數值。
U10的輸出電壓為:
解得:RV1=4.98 k,電阻RV1用一個50 k的滑動變阻器代替,便於放大倍數的調節。
1.2 穩壓電源電路
選用L7812和L7912穩壓晶片分別得到穩定的正12 V和負12 V電壓。而A/D轉換晶片、溫度傳感器和單片機等都需要正5 V的工作電壓,選用L7805穩壓晶片得到穩定的正5 V電壓輸出。其中P5用於接220 V交流轉12 V交流的變壓器,對12 V交流經過整流後輸出直流正電壓和直流負電壓。將整流後的直流電壓經過一個2 200μF和一個0.33μF的電容後可以得到較穩定的直流電壓。然後通過穩壓晶片L7812和L7912就可以得到穩定的正負12 V電壓,把穩壓管輸出的正12 V作為L7805的輸入,L7805就可以輸出穩定的正5 V電壓。
2
上位機的整體程序設計流程圖如圖3所示。主程序通過串口接收下位機發送的4路A/D轉換採集到的8位數字量,通過數據處理,計算出溫度值、熱變形誤差,同時能在前面板顯示出來。另外還要實現報警、數據存儲和相關數據採集參數設定等功能。
3
溫度傳感器TC1047理論上是0℃時為100 mV,40℃時為900 mV,但在實際中,理論與實際是有一定的差距的,為了使測量的數據更加的準確,需要對4路溫度傳感器進行標定。即將四路傳感器同標準傳感器在同一條件下的輸出溫度作比較。
第一組數據:
平均電壓輸出:U1_1=(0.74+0.73+0.74)/3=0.737 V.
平均標準溫度:T1_1=(24.4+24.3+24.4)/3=24.37℃.
第二組數據:
平均電壓輸出:U1_2=(0.8+0.79+0.79)/3=0.793 V.
平均標準溫度:T1_2=(30.5+30.4+30.4)/3=30.37℃.
第三組數據:
平均電壓輸出:U1_3=(0.85+0.86+0.84)/3=0.85 V.
平均標準溫度:T1_3=(35.7+35.9+35.8)/3=35.8℃.
第一組數據:
平均電壓輸出:U2_1=(0.74+0.74+0.74)/3=0.74 V.
平均標準溫度:T2_1=(24.3+24.5+24.4)/3=24.4℃.
第二組數據:
平均電壓輸出:U2_2=(0.81+0.79+0.82)/3=0.806 V.
平均標準溫度:T2_2=(30.5+30.4+30.5)/3=30.37℃.
第三組數據:
平均電壓輸出:U2_3=(0.85+0.86+0.87)/3=0.854 V.
平均標準溫度:T2_3=(35.6+35.9+35.7)/3=35.73℃.
第一組數據:
平均電壓輸出:U3_1=(0.74+0.74+0.74)/3=0.736 V.
平均標準溫度:U3_1=(24.3+24.5+24.4)/3=24.4℃.
第二組數據:
平均電壓輸出:U3_2=(0.80+0.79+0.82)/3=0.803 V.
平均標準溫度:U3_2=(30.4+30.4+30.5)/3=30.46℃.
第三組數據:
平均電壓輸出:U3_3=(0.84+0.86+0.84)/3=0.848 V.
平均標準溫度:U3_3=(35.7+35.8+35.8)/3=35.77℃.
第一組數據:
平均電壓輸出:U4_1=(0.75+0.73+0.72)/3=0.733 V.
平均標準溫度:T4_1=(24.6+24.4+24.2)/3=24.43℃.
第二組數據:
平均電壓輸出:U4_2=(0.83+0.79+0.81)/3=0.81 V.
平均標準溫度:T4_2=(30.7+30.2+30.4)/3=30.37℃.
第三組數據:
平均電壓輸出:U4_3=(0.85+0.83+0.86)/3=0.846V.
平均標準溫度:T4_3=(35.7+35.6+35.8)/3=35.7℃.
計算出的各通道溫度傳感器平均輸出電壓和對應的平均標準溫度繪製出TC1047溫度傳感器的實際輸出電壓與溫度的關係。
為了觀察溫度傳感器輸出電壓隨溫度變化的趨勢直線,並將趨勢直線與理論直線對比。用EXL繪製出4通道的各自線性趨勢線和理論的直線。
為了使測量的溫度更加準確,將各通道溫度傳感器電壓-溫度變化趨勢直線的斜率和y軸的截距分別相加再作平均值作為實際直線斜率和截距。下面分別計算出平均直線斜率k和截距d。
斜率:k=(0.099+0.010 1+0.009 8+0.010 5)/4=0.010 1;
截距:d=(0.495 3+0.495 9+0.497 2+0.492 2)/4=0.495。
所以溫度傳感器的實際輸出電壓與溫度的關係表達示為:
Vout=0.010 1 T+0.495.
式中,Vout為溫度傳感器輸出電壓,單位為V;T為所測溫度,單位為℃。
4 數據的測量
對溫度傳感器進行標定之後就可以對溫度進行實時採集。在進行數據採集時將串口的相關參數設置好之後,再設置報警溫度上限為40℃,數據採集時間間隔為500 ms。然後運行上位機和下位機程序,並點擊上位機的開始運行按鈕,就可以實現數據的採集和顯示。上位機的實時數據採集界面如圖4所示,用手觸摸1通道溫度傳感器,則通道1的實時曲線也會隨著溫度的改變而改變。在界面左上角窗口顯示的是各通道溫度實時強度圖,圖中可以看出當通道1的溫度升高時,強度圖表中通道1的顏色也會隨之變淡,說明溫度在升高,而顏色加深時,說明溫度在降低。強度圖表下面顯示的是採集到的4通道溫度數據,同時也顯示出採集數據的時間。在顯示界面的右下角顯示的是數控工具機在當前採集到溫度環境下的熱誤差。
採集溫度數據時還需要對採集到的溫度數據進行存儲,點擊上位機中的數據存儲路徑可以選擇數據存儲的路徑,可將溫度數據以TXT或者XLS的格式存儲。
在實時數據顯示界面顯示的是動態的數據,為了方便數據的觀察,歷史數據顯示界面可以讀取存儲文件裡的數據並顯示出來,方便數據的分析。在程序運行時點擊歷史界面中的開始讀取按鈕就可以讀取歷史文件數據並顯示出來,其讀取的歷史數據界面顯示如圖5所示。
上位機在進行數據採集和顯示的同時,下位機也可以實現溫度的採集並在LCD1602上顯示出實時的溫度數據。
5 結論
本設計操作簡單,利用多路溫度傳感器,對被測量工具機進行溫度測試,並通過一定算法,完成對熱誤差的計算及補償,具有一定實用價值。