AT89C51單片機在數控車(chē)床切削力測量中的應用
2.6 A/D轉換器
把測力傳感器輸出的模擬電壓變成數字量,我們選用的是ADC0809八位A/D轉換器,他的轉換方法為逐次逼近法。在A(yíng)/D轉換器的內部含有一個(gè)高阻抗斬波穩定比較器,一個(gè)帶有模擬開(kāi)關(guān)數組的256R分壓器,以及一個(gè)逐行逼近的寄存器。八路的模擬開(kāi)關(guān)可由地址鎖器和譯碼器控制,可以在八個(gè)通路中任意訪(fǎng)問(wèn)一個(gè)單邊的模擬信號。
2.7 顯示切削力
A/D轉換器雖然將測力傳感器輸出的模擬電壓值轉換為數字量,但是它并不是實(shí)際數控車(chē)床切削力的值,要得到真正的切削力的值還需進(jìn)行以下兩步工作:靜態(tài)標定和標度變換。
靜態(tài)標定:就是通過(guò)實(shí)驗建立測力傳感器輸出電壓與切削力之間的關(guān)系曲線(xiàn)和數學(xué)模型。
標度變換:就是將A/D轉換器轉換后的00H—FFH數字量再轉換為實(shí)際的切削力的值。
以上兩步工作進(jìn)行完畢后才能在單片機LED上顯示出數控車(chē)床實(shí)際的切削力的值。以便數控車(chē)床操作人員進(jìn)行監視和管理生產(chǎn)等。
3 系統軟件設計
系統的主程序框圖見(jiàn)圖3,系統軟件包括:動(dòng)態(tài)顯示程序、A/D采樣程序、標度變換程序和中斷服務(wù)程序等。中斷服務(wù)程序主要是利用定時(shí)器中斷產(chǎn)生的時(shí)標,對LED數碼管進(jìn)行動(dòng)態(tài)刷新顯示。
3.1 A/D采樣程序
本程序分主程序和中斷服務(wù)程序兩部分。主程序用來(lái)對中斷初始化,給ADC0809發(fā)啟動(dòng)脈沖、送模擬量路數的地址、動(dòng)態(tài)顯示、監控報警等。中斷服務(wù)程序用來(lái)接收A/D轉換后的數字量和判斷一遍采樣完成否。

圖3 系統主程序框圖

圖4 標度變換子程序框圖
部分參考程序如下:主程序:
ORG 0A00H
MOV R1,#30H;輸入數據區起始地址
MOV R4,#03H;模擬量總路數送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路,則轉LOOP
CLR EX0; 若采集完3路,則關(guān)INT0中斷
LOOP: RETI
END
3.2 標度變換子程序框圖
由實(shí)驗結果得知,本系統由A/D轉換成的數字量與數控車(chē)床切削力的值呈線(xiàn)性關(guān)系。因此,標度變換的數學(xué)公式為:Ax=A0+(Am-A0)(Nx-No)/(Nm-No)
A0 ── 一次測量?jì)x表的下限
Am ── 一次測量?jì)x表的上限
Ax ── 實(shí)際測量值
N0 ── 儀表下限所對應的數字量
Nm ── 儀表上限所對應的數字量
Nx ── 測量值所對應的數字量
為了使程序簡(jiǎn)單,一般把被測參數的起點(diǎn)A0(輸入信號為0)所對應的A/D轉換值為0,即N0=0,這樣公式變?yōu)椋?BR>Ax= Nx/Nm(Am-A0)+A0
該系統標度變換子程序框圖如圖4所示。
4 結束語(yǔ)
應用單片機測量數控車(chē)床切削力,實(shí)現了生產(chǎn)過(guò)程中連續自動(dòng)采樣、實(shí)時(shí)顯示、過(guò)載報警,以便操作人員進(jìn)行監控和管理生產(chǎn),有效地防止了因切削用量過(guò)大而損壞數控車(chē)床的現象發(fā)生。本系統也可經(jīng)改進(jìn)后移植到需限載的其他領(lǐng)域中應用。
評論