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