1 多CPIJ单片机数控系统的硬件设计原则
系统的运算速度必须满足机床各种运算速度要求,以符合数控机床的实时多任务的特点;系统硬件结构能够满足经济型机床的功能要求,扩展性能好.适用面广,可靠性高,保护功能好:硬件功能模块化设计,并且模块划分得当,便于扩充,便于判断故障和维修;在不增加硬件成本的前提下。可以利用网络,以提高设备利用率和使用质量。
2 多CPU单片机数控系统的硬件架构
2.1 数控系统的CPU
本数控系统预控制四个电机,其中三个涉:进步或伺服电机可以实现两两直线、圆弧插补或者空间直线插补。
目前效控系统按照CPU的数量来分有:单机系统和多机系懒统。指整个CNC装置只有—个CPU,它集中控制和管理整个系统资源,通过分时处理的疗式来实璐种数控功能。其优点在于投资小,结构简单,易于实现。但系统功能受CPU字长、数据宽度、寻址能力和运算速度等因素的制约。现在这种结构已被多机结构的毛从结构所代替。
多机系统。是指整个cNc装置中有两个或两个以上的CPU,也就是系统中的某螳功能模块也带有CPU,根据这些CPU间的相互荚系的不同又町以将其分为:
①主从结构系统,在该系统中只有一个cpu实际为主CPU系统的资源(系统存储器、系统总线泊J控制和使用权,而其他带有CPU的功能模块丽为智能部件,则无权使用或控制系统资源,它只能接收主CPU的控制命令或数据,或向主CPU发出请求以获得所需的数据。只有一卟CPU处于主导地位,其他CPU处于从属地位,称之为主从结构。
②多主结构系统,在该系统中系统部件之间采用紧藕合(即均挂在系统总线上,集中在一个控制箱内),有集中的操作系统,通过总线仲裁器(软件和硬件徕解决争用总线问题,通过公共俐诺器来交换信息。
③分布式结构系统,该系统有两个或者两个以上的带有CPU的功能模块,每个功能模块有自己独立的运行环境(系统总线、存储器、操作系统等),功能模块间采用松藕合,即在空间上:町以较为分散,各模块问采用通信的方式交换信息。
图1多CPU单片机数控系统的1.更4q-结构
目前,由于多主结构和分布结构的系统构成复杂,操作系统的设计比较困难,加之从主结构系统能基本满足数控加工的要求,故这两种结构的CNC系统较少。
从硬件的体系结构来看,单机系统与丰从系统及其相似,因为主从结构的从CPU模块与单朝结构的相应模块在功能上是等价的,只是从模块的能力更强而已。
考虑到本数控系统运用单片机作为处理器,单一CPU并不能够满足多任务的控制要求,所以系统采用双CPU架构。—个CPU实现实时性要求不高的系统管理和监控,另—个CPU实现实时性要求较高的运动控制,CPU间通过通讯实现数据交换。因此本系统采用主从式双CPU架构。
2.2 多CPU单片机数控系统的硬件总体架构
多CPU单片机数控系统数羟装置的硬件结构应具有以下特点。
采用主从CPU结构控制系统,主、从CPU都采用高性能单片机,每个子系统都有自已独立的运行环境和控制功能;主、从CPU之间采用特定的通信协议进行数据通讯,交换信息。采用共享双VI RAM结构或者直接信息交换方式实现通信。用户可选;硬件功能模块化设计,主要分为键盘模块,显示模块,扩展矾)模块,程序操作模块.插补控制模块,位置控制模块,电路驱动模块和电源隔离模块等功能模块;丰、从CPU分工合作。主CPU完成前台控制.即系统初始化、人机界丽管理、系统监控、键盘扫描、加工程序编辑、FO控制等管理控制工作。从CPU则上要进行插补处理、位置控制、主轴控制、速度控制等实时控制工作。
3 多CPU单片机数控系统软件总体架构
CNC系统的程序丰要由以下几个部分组成:输入数据处理程序。输人数据处理程序的任务是接收输入的零件程序,并对其进行预处理。—般CNC系统的预处理包括:对使用ISO或EIA代码的零件程序进行翻译、整理’按所规定的格式进行存放。对零件程序的加工指令进行译码,对其坐标数据进行十进制到一删的转换甜编程轨迹进行刀具半径偏移汁算,以得到刀具巾心的运动勒迹,并继而处胂程序段的转换问_题;对插补计算及速度控制过程巾要用到的一些常数进行顶计算等。当然,不同功能的CNC系统,其预处理具体内容不尽相同,但其目的都是共同的:即为插补运算耵约时间。CNC系统对输人数据处理程序的实时性要求不高,它可在加工前或加工过程中的空闲时间进行。输入数据处理进行的充分—些.町减轻加工过程中实时性较强的插补运算及速度控制程序的负担。
插补运算程序。插补运算程序完成NC系统巾插补器的功能,即实现唯标轴脉冲分配的功能。南于现代微型计算机或微处理器档制器等具有功能强大和完善的指令系统和必要的算术了程序,给插补运算提供了许多力‘便。可以采用—些更方便的数学方法提高轮廓控制的精度,而不必厩武噌加硬件线路。插补运算是实时性很强的程序,要尽可能减少该程序中的的指令条数,即缩短进行一次插补运算的时间。因为这个时间直接决定了捕补进给的最高速度。有砦CNC系统中,还采用粗插补与精捅补相结合的方法,软件只作粗抽补,即每次插补一条微小直线段,硬件再将此微小直线段分成单个脉冲输出,完成精插补。这样既可提高进给速度,义能使汁算机节省出更多的时问进行必要的数据处理。
速度控制程序。速度控制程序的目的就是控制脉冲分配的速度。即根据给定的速度代码(或其相应的速度指令),控制插补运算的频率,以保证按预定的速度进给。在速度明显突变时,要进行自动加减速控制.避免速度突变造成驱动系统的失步。速度控制可以完全由软件方法曜序计时法实现,也可以保留用速度泽码控制振荡器的硬件线路,经中断或程序询问进入一次插补运算,达到速度控制的日的。此外,用软件对速度控制数据进行处理,并与硬件的速度积分器相结合,可以实现高性能的恒定合成速度控制。并大大提高插补进给的速度。
管理程序。管理程序是实现CNC系统协调工作的主体软件。按操作系统的观点:—个机机系统有CPU、存储器、外设及文件四项资源需要管理,而一般CNC系统中的管理程序其规模与通用性不大,所以不能称为操作系统而称为管理程序或监控程序,它主要对数据的输入、处理及切削加工过程中的各种系统程序进行统一的调度,以实现零件加工的实时控制。管理程序还要对面板命令、时钟信号、故障信号等引起的中断进行处理。水平较高的管理程序可使多道程序并行工作,如在插补运算与速度控制的空闲时问进行数据处理,或对系统进行必要的琐防性诊断等。
诊断程序。能够方便地设置各种诊断程序是CNC系统的特点之一。诊断程序町以在运行中及时发现系统的故障,并指出故障的类型。也町以在运行前或发生故障后,检在各种部件(接1:3、开关、伺服系统等)的功能是否正常不正常时指f“故障的部位便于维修人员及时处理减少故障停机时间。
因为此系统硬件为丰从CPU架构,结合每个CPU的管理功能不同,各个负责的模块软件如图2所示。
硬件采用模块化设计,软件更要突出模块化的设计思想。针对不同的数控系统软件功能构建模块化的程序,即数控系统的软件芯片化在软件工程思想的指导下,力求提高软件的重用率,受硬件系统开发的启发,通过对数控系统的功能划分,建立类似硬件芯片的数控系统软件芯片库。当建立新的数控系统时。只需从软件芯片库中取出相应的模块加以组合即可,必要时加以扩充,而,元需从头开发整个系统。
软件芯片也称软件组件,是运用类属化、抽象、封装、继承等现代软件工程技术的,完成特定功能,并且有良好接口的自包含实体。
在软件芯片集成运行环境的统一管理下。每个”软件芯片”可以灵活地进行重组。这些功能不同的软件芯片通过数控系统软件芯片库的集成环境进行配置.从而形成—个有机的整体.存任务调度下,完成CNC人机交互以及各种运动控制功能。