淮 北 职 业 技 术 学 院
开始 系统初始化 N 机床复位 加工程序输入键按下? 加工数据输入 N Y 自动加工键按下? 自动加工
N 手动加工键按下? 手动调整 Y Y N 管理程序流程
3.自动加工程序设计
(1)机床在自动加工时的动作顺序:工作台移动到位→刀具快速进给→加工→退刀→工
作台运动到下一位置;
(2)计算机在加工过程中的操作:读取刀具轨迹,控制机床完成加工; (3)由以上分析,设计自动加工程序框图如下所示:
21
淮 北 职 业 技 术 学 院
入口 零件坐标地址指 读零件坐标 调步进电机子程序 工作台移动到位 刀具快进 加工 快速退刀 零件坐标地址 指针加1 零 件 加 N 工完成 Y 返回
4.步进电机控制子程序设计
步进电机的控制包括速度,转角及方向的控制。步进电机在突然启动或停止时,由于负载和惯性,会使电机失步,所以电机运行时有一个加,减速过程。
通过确定进给脉冲数和脉冲时间间隔,即可实现步进电机转角与速度的控制。 (1)时间常数的确定
在步进电机控制程序中,利用单片机的定时器中断,延时产生进给脉冲的时间间隔。此间隔由送入定时器的时间常数决定。时间常数由下式计算:
22
淮 北 职 业 技 术 学 院
T?10?3Te?te?10?6
式中:T为脉冲时间间隔(ms);te为单片机机器周期(?s),在时钟为6MHz时,te=2?s。 (2)步进电机加,减速进给脉冲及脉冲时间间隔的确定 设步进电机加,减速方式为直线加,减速。 要使步进电机不失步,应满足:
Tm?Tg?TI
式中:Tm为步进电机启动力矩;Tg为负载力矩;TI为惯性力矩。 由步进电机Tjmax=3.92N.m,取步进电机的加速启动力矩
TM?Tjmax?0.866?0.3?392?0.866?0.3?101.84
则使步进电机不失不的惯性力矩
TI?Tm?Tg?101.84?96.57?5.27N.cm
步进电机角加速度
TI5.27?10?22????676.25(rad/s) ?4Jd0.7793?10fmaxd?df????b??b又
dtdttm
式中:tm为上升到步进电机最高频率所需时间,所以有:
2?1.5?1667?fmax360?64.5(ms)tm??b? ?676.25加速脉冲个数:nm?11fmaxt??1667?64.5?10?3?53.76 22确定加减脉冲个数都为54个
fmaxtn)tn 又因为:n?0.5ftn?0.5(tm23
淮 北 职 业 技 术 学 院
2tmnm所以脉冲时刻tn? fmaxT?10?3结合Te?te?10?6可以算出对应各脉冲时刻的计数器时间常数。
EPROM存储器中,时间常数依次安排在首地址为1000H的存储单元中,每个时间常数占据两个字节,低位地址存放时间常数低8位,高位地址存放时间常数高8位。
在程序中,设置加速,恒速,减速脉冲计数器N0,N1,N2。以计数器的值是否为0作为相应过程是否结束的标志。步进电机控制程序框图如下所示: 步进电机控制子程序:
开始 中断初始化 设时间常数地址指针 首地址指向1000H 加速 减速 脉冲计数器赋初值 恒速 送时间常数至计数器中 N Y 开中断 关中断? 返回 启动定时器
步进电机控制中断服务程序:
中断服务程序入口
24
淮 北 职 业 技 术 学 院
送时间常数
步进电机进
N0=0?
N1=0?
N2=0?
时间常数地关中断 址指针加1
N2←N2-1
中断返回
时间常数地址指针加1 N1←N1-1 N0←N0-1 5.编语言程序设计 (1)内存地址分配
加速脉冲数计数器N0地址设为20H;
恒速脉冲数计数器N1低8位字节地址为21H,高8位字节地址位22H; 减速脉冲数计数器N2地址位23H。
加速,减速,恒速脉冲总数寄存器N低位字节地址位24H,高位字节地址位25H; 步进电机进给控制子程序FEED首地址位0E80H。每调用一次该程序,步进电机按规定方向进给一步。 (2)程序清单
N0 EQU 20H ;加速 N1L EQU 21H ;恒速 N1H EQU 22H
N2 EQU 23H ;减速
NL EQU 24H ;脉冲总数寄存器
NH EQU 25H
25