AT89C51單片機在數(shù)控車床切削力測量中的應用
2.6 A/D轉(zhuǎn)換器
把測力傳感器輸出的模擬電壓變成數(shù)字量,我們選用的是ADC0809八位A/D轉(zhuǎn)換器,他的轉(zhuǎn)換方法為逐次逼近法。在A/D轉(zhuǎn)換器的內(nèi)部含有一個高阻抗斬波穩(wěn)定比較器,一個帶有模擬開關數(shù)組的256R分壓器,以及一個逐行逼近的寄存器。八路的模擬開關可由地址鎖器和譯碼器控制,可以在八個通路中任意訪問一個單邊的模擬信號。
2.7 顯示切削力
A/D轉(zhuǎn)換器雖然將測力傳感器輸出的模擬電壓值轉(zhuǎn)換為數(shù)字量,但是它并不是實際數(shù)控車床切削力的值,要得到真正的切削力的值還需進行以下兩步工作:靜態(tài)標定和標度變換。
靜態(tài)標定:就是通過實驗建立測力傳感器輸出電壓與切削力之間的關系曲線和數(shù)學模型。
標度變換:就是將A/D轉(zhuǎn)換器轉(zhuǎn)換后的00H—FFH數(shù)字量再轉(zhuǎn)換為實際的切削力的值。
以上兩步工作進行完畢后才能在單片機LED上顯示出數(shù)控車床實際的切削力的值。以便數(shù)控車床操作人員進行監(jiān)視和管理生產(chǎn)等。
3 系統(tǒng)軟件設計
系統(tǒng)的主程序框圖見圖3,系統(tǒng)軟件包括:動態(tài)顯示程序、A/D采樣程序、標度變換程序和中斷服務程序等。中斷服務程序主要是利用定時器中斷產(chǎn)生的時標,對LED數(shù)碼管進行動態(tài)刷新顯示。
3.1 A/D采樣程序
本程序分主程序和中斷服務程序兩部分。主程序用來對中斷初始化,給ADC0809發(fā)啟動脈沖、送模擬量路數(shù)的地址、動態(tài)顯示、監(jiān)控報警等。中斷服務程序用來接收A/D轉(zhuǎn)換后的數(shù)字量和判斷一遍采樣完成否。
圖3 系統(tǒng)主程序框圖
圖4 標度變換子程序框圖
部分參考程序如下:主程序:
ORG 0A00H
MOV R1,#30H;輸入數(shù)據(jù)區(qū)起始地址
MOV R4,#03H;模擬量總路數(shù)送R4
MOV R2,#00H;IN0地址送R2
SETB EA
SETB EX0
SETB IT0
MOV R0,#0F0H
MOV A,R2
MOVX @R0,A
SJMP $ ;等待中斷
中斷服務程序:
ORG 0003H
AJMP CINT1
ORG 0100H
CINT1: MOV R0,#0F0H
MOVX A,@R0
MOV @R1,A
INC R1
INC R2
MOV A,R2
MOVX @R0,A
DJNZ R4, LOOP;若未采集完3路,則轉(zhuǎn)LOOP
CLR EX0; 若采集完3路,則關INT0中斷
LOOP: RETI
END
3.2 標度變換子程序框圖
由實驗結(jié)果得知,本系統(tǒng)由A/D轉(zhuǎn)換成的數(shù)字量與數(shù)控車床切削力的值呈線性關系。因此,標度變換的數(shù)學公式為:Ax=A0+(Am-A0)(Nx-No)/(Nm-No)
A0 ── 一次測量儀表的下限
Am ── 一次測量儀表的上限
Ax ── 實際測量值
N0 ── 儀表下限所對應的數(shù)字量
Nm ── 儀表上限所對應的數(shù)字量
Nx ── 測量值所對應的數(shù)字量
為了使程序簡單,一般把被測參數(shù)的起點A0(輸入信號為0)所對應的A/D轉(zhuǎn)換值為0,即N0=0,這樣公式變?yōu)椋?BR>Ax= Nx/Nm(Am-A0)+A0
該系統(tǒng)標度變換子程序框圖如圖4所示。
4 結(jié)束語
應用單片機測量數(shù)控車床切削力,實現(xiàn)了生產(chǎn)過程中連續(xù)自動采樣、實時顯示、過載報警,以便操作人員進行監(jiān)控和管理生產(chǎn),有效地防止了因切削用量過大而損壞數(shù)控車床的現(xiàn)象發(fā)生。本系統(tǒng)也可經(jīng)改進后移植到需限載的其他領域中應用。
評論