在数控机床体系中,功用模块可分为两大部分:一部分是实时性要求不高的功用,例如人机界面交互办理等;另一部分是实时性要求高的功用,首要有伺服操控、插补核算等。依据这一特色,该体系选用两级操控结构,运用 IPC丰厚的软件资源,供给图形化的人机交互环境;运用嵌入式履行操控器的高实时性和稳定性,完结快速、牢靠的操控,充分发挥了二者的长处。两级之间用串行口进行实时通讯。本文首要介绍嵌入式履行操控器的完结。
1 数控机床体系硬件结构
数控机床体系硬件结构如图1所示,IPC作为上位机,装置有专用软件,完结人机交互;C8051020 芯片及其外围电路构成的嵌入式履行操控器作为下位机,担任实时、牢靠的操控。履行操控器经过串行口接纳上位机的指令信息(包括:插补指令、开关量操控指令),再将这些信息转换成操控信号输送给相应的履行部件。例如,将插补指令转换成一连串的插补信号,输送给电机操控部件;将开关量操控指令转换成输出信号,经过I/O驱动阻隔接口板输送给相应的开关操控器。履行操控器一起还有2个检测使命:一个是刀具是否运动到各轴限位点的检测,另一个是空隙电压的检测。这两个信息将为运动时的主动调理操控供给依据。履行操控器还担任将运转中的状况信息组装成帧,实时地传送给上位机。
2 μC/OS-Ⅱ在C8051F020上的移植
要运用μC/OS-Ⅱ,首要就必须把这个内核成功地移植到C805lF020上。μC/OS-Ⅱ的移植首要是对OS_CPU.H,OS_CPU_A.ASM和OS_CPU_ C.C三个文件进行修正,下面就详细的修正内容做介绍。
2.1 OS_CPU.H文件的修正
OS_CPU.H包括了用#define界说的与处理器相关的常量、宏和类型界说。其间,需求修正的部分如下:
2.2 OS_CPU_A.ASM文件的修正
该文件包括4个汇编语言函数。
(1)OSStartHighRdy()函数在多使命体系发动函数OSStart()中调用。效果是设置体系运转标志位OSRunning=TRUE;将安排妥当表中最高优先级使命的栈指针Load到SP中,并强制中止回来。
(2)OSCtxSw()函数是在使命级切换函数中调用的。效果是保存当时使命的环境变量,将当时SP存入使命TCB中,载入安排妥当最高优先级使命的SP,康复安排妥当最高优先级使命的环境变量,中止回来。这样就完结了使命级的切换。
(3)OSIntCtxSw()在退出中止服务函数OSIntExit()中调用。效果是完结中止级使命切换。
(4)OSTIcklSR()体系时钟节拍中止服务函数,其周期的巨细决议了内核所能给运用体系供给的最小时刻距离服务。该中止由C8051F020的TO守时器完结,设置守时时刻为20 ms。修正代码如下:
其间:TOVAL是16位守时器T0的时刻常数,该体系选用25 MHz的外接晶振,形式1(16位)守时。
2.3 OS_CPU_C.C文件的修正
该文件中界说10个C函数,如下:
其间,最重要的是OSTaskStklnit(),它的效果是初始化仓库,回来仓库的最低地址、仓库的长度,便利汇编语言完结使命的切换。其他9个函数是暂无详细功用,其功用能够依据需求在体系内核扩展时增加。
3 依据μC/OS-Ⅱ的数控机床体系规划
3.1 履行操控器的软件结构
如图2所示,体系整体分为3个功用块,即:与IPC的通讯、指令解说和指令履行。其间,通讯有发送和接纳两方面内容;指令解说时,直接履行开关量操控指令;指令履行中,需求进行插补核算、检测空隙电压和限位开关状况及加工监测。
3.2 使命区分及其优先级确实足
(1)发送使命
嵌入式履行操控器发送给IPC的信息有2种:联络信号和运转中的状况信息。嵌入式履行操控器处于待命状况时,定时向IPC发送联络信号,用于确认IPC是否正常作业。若IPC运转正常,则IPC收到联络信号后,会回送给嵌入式履行操控器一个应对信号,若发送的屡次联络信号都未收到应对,则以为IPC犯错。嵌入式履行器处于加工状况时,将运转中的状况信息以固定格局定时向IPC发送。IPC收到信息后,将其转换成图形、文字等信息显示出来,供给给操作员,便于实时把握加工状况,发送使命的实时性要求低。
(2)接纳使命
嵌入式履行操控器接纳IPC机发送的联络、应对和指令3种信息,若接纳到联络信号或应对信号,则接纳使命直接处理(发送应对信号或改写联络状况位);若既不是联络信号也不是应对信号,则以为是指令信息,接纳使命将指令完好接纳后,封闭写接纳缓冲区,激活指令解说使命。接纳使命是由通讯口接纳中止触发的,其实时性要求高。
(3)指令解说使命
指令解说使命首要对接纳缓冲区的指令信息进行校验和解说,处理完结后,清空并敞开接纳缓冲区,答应新指令的接纳。这样做的意图是不在接纳缓冲区中积压多条指令,在当时指令解说完结之前,不接纳新指令,以进步嵌入式履行操控器对指令的响应速度。依据指令履行时刻的长短,将指令分为开关量操控指令和插补指令2 种。开关量操控指令的履行时刻短,因而在指令解说后直接履行,以削减使命切换的时刻耗费。插补指令是加工指令,运转时刻长,选用专门的加工监控使命来履行,指令解说使命只担任在指令解说完结后激活加工监控使命。指令解说使命的实时性要求高。
(4)加工监控使命
加工监控使命依据当时的作业状况(手动方法或主动方法)激活插补核算使命,并进行加工状况的监控。手动作业方法下,操作员在PC机上手动操控刀具向 -x,+x,-y,+y,-z,+z六个方向运动、刀具回来基准点、端面找正和孔中心定位等操作。主动作业方法下,操作员向操控器传送直线、圆弧的运动指令,操控器主动完结该线形的运动。加工监控使命的实时性要求较高。
(5)插补核算使命
插补核算使命是核算概括起点和结尾的中心点坐标值。本体系选用逐点比较法进行插补,插补使命每履行1次发生1个行程增量,每个行程增量以1个脉冲的方法输出给步进电机。插补使命的运转周期或许低于操作体系时钟,抵达每秒数千次,因而运用守时器1作为插补运动时刻操控器。插补核算使命在该软件中的实时性要求最高。
(6)空隙电压检测和限位开关状况检测使命
该体系用于电火花线切割数控机床,空隙电压是电火花加工时东西(电极丝)与工件之间的放电电压,该数据是对放电加工进程进行实时检测的重要参数,需求实时收集。限位开关是指刀具运动到加工台鸿沟方位时,触发的一个状况开关。当抵达这个感应开关时刀具应该停止作业,起到一个维护效果,也便是限制了运动的位移,该信息也需求实时收集。这两个使命具有实时性高,履行频频,履行时刻短的特色,因而把它们设为一个检测使命。与插补使命相同,因为检测使命的运转周期低于操作体系时钟,因而运用守时器3作为检测使命的时刻触发器。
上面将完结的功用区分为6个使命,介绍这些使命的功用,并对其实时性要求做了剖析。上述使命区分如表1所示。
3.3 使命间通讯
在完结使命区分后,还需求考虑使命的通讯和同步。发送使命与检测使命是独立的,接纳使命、指令解说使命和加工监控使命存在联络,如图3所示,这儿需求运用信号量和邮箱处理使命间的通讯同步。
(1)指令信号量SemCmd。当接纳使命接纳到一条指令信息时,宣布该信号量,由指令解说使命接纳,取出并解说指令后,铲除该信号量,答应接纳新指令。
(2)加工发动音讯邮箱Mbox。当指令解说使命发现指令信息为插补指令时,将信息翻译成约好格局存入邮箱,发送出去,加工监控使命接纳。
4 试验成果
试验测验,IPC经过串口向履行操控器发送直线插补指令G01X1000Y2000\LF,如图4所示,调查回来信息中的x,y轴坐标,各点根本散布于点(O,O)与点(1000,2 000)的直线周围,差错小于1个运动当量,这说明整个体系运转正常。
5 结语
C8051F020处理器具有丰厚的硬件资源和强壮的处理功能,μC/OS-Ⅱ具有实时性高,通用性好,移植、扩展便利等特色。依据该软硬件渠道,能够下降体系的复杂度,进步产品的开发速度。经验证,该硬软件体系能满意该数控体系的要求,具有可行性。