|
3 系统软件设计 系统的主程序框图见图3,系统软件包括:动态显示程序、A/D采样程序、标度变换程序和中断服务程序等。 中断服务程序主要是利用定时器中断产生的时标,对LED数码管进行动态刷新显示。 3.1 A/D采样程序 本程序分主程序和中断服务程序两部分。主程序用来对中断初始化,给ADC0809发启动脉冲、送模拟量路数的地址、动态显示、监控报警等。中断服务程序用来接收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 $ ;等待中断 中断服务程序: 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路,则关INT0中断 LOOP: RETI END 3.2 标度变换子程序框图 由实验结果得知,本系统由A/D转换成的数字量与数控车床切削力的值呈线性关系。因此,标度变换的数学公式为: Ax=A0+(Am-A0)(Nx-No)/(Nm-No) A0 ── 一次测量仪表的下限 Am ── 一次测量仪表的上限 Ax ── 实际测量值 N0 ── 仪表下限所对应的数字量 Nm ── 仪表上限所对应的数字量 Nx ── 测量值所对应的数字量 为了使程序简单,一般把被测参数的起点A0(输入信号为0)所对应的A/D转换值为0,即N0=0,这样公式变为: Ax= Nx/Nm(Am-A0)+A0 该系统标度变换子程序框图如图4所示。 4 结束语 应用单片机测量数控车床切削力,实现了生产过程中连续自动采样、实时显示、过载报警,以便操作人员进行监控和管理生产,有效地防止了因切削用量过大而损坏数控车床的现象发生。本系统也可经改进后移植到需限载的其他领域中应用。
|