简述MPC08在开放式钻床数控系统中的应用

出处:weijq 发布于:2011-09-01 17:07:28

 

  从1952年世界上台数控机床诞生以来,数控技术经过几十年的发展日趋完善,已由出的硬件数控(NC)经过计算机数控(CNC),发展到以微型计算机为基础的数控(MNC)、直接数控(DNC)和柔性制造系统(FMS)等,并朝着更高的水平发展。但随着市场化的发展,市场竞争空前激烈,对制造商所生产的产品不但要求价格低,质量好,而且要求交货时间短,售后服务好,好要满足用户特殊的需要,即要求产品具有个性化。而传统的数控系统是一种专用封闭式系统,它越来越不能满足市场发展的需要。新的环境要求CNC进一步向开放式控制系统转化。

  开放式数控系统应具有下列特征:

  1. 模块化:举模块化的特征。采用分布式控制原则。采用系统、子系统和模块分级式的控制结构,其构造是可移植和透明的。

  2. 标准化:开放"是在一定规范下的开放,并非毫无约束的开放。需要制定一个标准来约束各类机床控制器的研发。

  3. 可再次开发:当允许用户进行第二次开发。根据需要可方便地实现重构、编辑,以便实现一个系统多种用途。

  4. 平台无关性:放时体系结构中各模块相互独立,系统厂、机床厂及终用户都能够很容易地独立开发一系列专用功能和其他有个性的模块。为此要有方便的支持工具,控制程序设计按系统-子系统¬-模块三级进行,各模块接口协议要明确。

  5. 适应网络操作方式:为开放式控制器应当考虑到迅速发展的网络技术及其在工业生产领域的应用。要具有一种较好的通信和接口协议,一边各相对独立的功能模块通过通信实现信息交换,满足实时控制需要。   总之所谓开方式数控系统应是一个模块化、可重构、可扩充的软硬件控制系统

  本次课题基于步进机电有限公司的MPC08运动控制器就是一款能满足数控系统功能要求,性价比高的通用运动控制器,课题根据钻床的工艺在此基础上进行数控系统软件的研究。

  1 系统总体结构

  本系统数控钻床共有8个轴,分别为X,Y轴和Z1,Z2,Z3,Z4,Z5,Z6轴,其中X,Y轴控制平面两个方向的定位, Z1,Z2,Z3,Z4,Z5,Z6则控制下钻的进给量,XYZ可联动控制。加工时, 根据要加工工件上的孔坐标、孔直径、孔深等参数, 编好工件的加工文件, 系统按加工文件控制机床完成钻削加工。

  为了对机床8个轴的进行控制,我们采用了MPC08运动控制器作为系统控制的内核,插在PC机的PCI插槽中。工业PC机作为主控计算机来完成与MPC08控制器的通讯以及上层系统操作、调度管理、故障诊断、参数输入等非实时性任务。

  MPC08运动控制器是基于PC机PCI总线的步进电机或数字式伺服电机的上位控制单元,它与PC机构成主从式控制结构,MPC08卡完成运动控制的所有细节,包括脉冲和方向信号的输出、自动升降的处理、原点和限位等信号的检测等等。它的主要功能包括:运动函数库为单轴的步进或伺服控制提供了多个运动函数:单轴运动、多轴独立运动、多轴直线插补、圆弧插补、三轴螺旋线运动等。为三座标测量机提供了编码器位置锁存功能

  IO及反馈系统使用MPC08的专用和通用的输入和输出通道进行各种机床电器IO信号的连接与控制;驱动和伺服步进电机单元则是接收MPC08发出的脉冲及方向信号完成需要的运动。

  变频器和主轴转动控制部分是利用PC机的串口进行和变频器的通讯,由此完成主轴转速的控制,此控制则是独立于MPC08之外。

  2 软件结构设计

  为了满足伸缩性,移植性,扩展性和互操作性的要求,软件采用了模块化设计的思想,利用VisualC++6.0开发工具在Windows2000操作系统上开发而成。软件总体分为两大部分,人机界面交互部分和系统控制部分。

  1)人机界面  人机界面模块主要完成整个数控系统的状态显示和需求参数的输入,除此以外应该使界面友好,使用便捷。本程序设计借助了MFC库中CWnd类和CButton按钮类的强大功能,利用这两个类的成员函数以及类派生的子类构造了友好便捷的界面。界面包括有加工过程中重要参数的显示,主要功能按钮和加工图形的显示。其中参数显示有各轴的坐标,工作行程,下止点,刀具代号,直径,偏移以及加工的孔数记录,所在刀库的记录等;功能按钮有启动,回原点,回停车位,导入文件,刀具参数,刀具管理,加工参数等,其中刀具参数,刀具管理和加工参数按钮还可以打开其他界面完成系统功能;图形显示则位于界面的中间部分用于显示加工PCB孔的图形,加工过程中还可以动态显示加工到某个孔。

  2)加工文件  加工文件功能模块完成对外部输入进来的加工文件(PCB行业通用的Excellon格式文件)进行译码,将加工文件的信息转化为控制系统需要的数据形式。软件具体实现办法是将文件的每一行进行解读,根据解读出来的信息将每个要加工的刀具节点数据放在一个WORK_NODE结构里面,对应在该刀具下的孔加工数据放在WORK_NODE里面的RECORD_NODE结构体内,统一将每一个刀具节点存放到以WORK_NODE为类型的加工链表gWorkList里。其中WORK_NODE和RECORD_NODE的数据结构如下:

  typedef struct _WORK_NODE

  {

  int          Type;                            //刀具类型,

  int          ToolNo;                          //刀具号   T0,T1……

  double       Diameter;                        //mm直径

  double       VelocityForZUp;                  //提升速度

  double       VelocityForZDown;                //下钻速度mm/min

  double       Offset;                          //下钻允许偏移量mm

  int          Rev;                             //主轴转速rpm/minute

  int          MaxLife, HitCount;               //寿命

  int          ToolCurNo;                       //当前刀具所在刀库号

  CRecordList *pList;                          //孔坐标链表

  }WORK_NODE,*PWORK_NODE;

  typedef struct _RECORD_NODE

  {

  double x;              //x坐标

  double y;             //y坐标

  }RECORD_NODE,*PRECORD_NODE;

  3)   加工参数管理 本功能完成在机床控制过程中各参数的管理,包括机器的轴参数,系统参数,加工参数,刀具参数,机床坐标参数。为了方便管理和使用,以上参数程序里都定义全局变量存放,使用时对这些变量操作即可以进行各参数的读取和修改。每个参数变量都以一个自定义的结构体为类型,轴参数类型内包括每个轴的使能,速度,加速度,脉冲当量,回零速度,回零方向,反向间隙等;系统参数包括插补,到位检测周期,刀库坐标位置,深度检测深度,深度检测速度;加工参数包括进给速度,提升速度,工作行程,主轴转速,换刀方式,断钻检测允许范围;刀具参数包括刀具的类型,直径,寿命,已使用寿命,所在刀库号;机床坐标参数则包括机床的坐标和相对坐标参数。所有这些参数除了和相对坐标参数外都需要在加工前由使用者按需求输入,加工过程中根据这些设置的数据进行运动。下面是轴参数的数据结构例子:

  typedef struct _AXIS_PARAM_SET

  {

  int    Installed;                                   //轴是否安装:TRUE--安装

  int    Enable;                                      //轴是否有效

  int    HomeDir;                                     //机床回零方向:1--正向,-1--反向,0--无效

  double Interval;                                    //反向间隙

  &nb, sp;&n, bsp;    double MaxSpeed;                //速度(mm/min)(A)

  double AccelSpeed;                                  //加速度(mm/min︿2)3600000

  double PulseFactor;                                 //脉冲当量(mm)

  long   PulseUp;                                     //电子齿轮分子

  long   PulseDown;                                   //电子齿轮分母

  long   PulseDir;                                    //反馈方向

  int    SRatio;                                      //S型加速度曲线系数

  double HomeSpeed;                                   //回零速度

  double HomeCheckDis;                                //回零检测长度

  double HomeOffsetDis;                               //回零后的移动距离

  double DepthCheckDis;                               //深度检测的下降距离

  }AXIS_PARAM_SET,*PAXIS_PARAM_SET;

  4)运动与换刀控制 运动与换刀控制是钻床运动的部分,完成钻床的孔加工(包括启动,定位,下钻,提升),回零,回停车位和换刀的动作。本模块的代码都在专门建立的运动控制线程PubWorkThreadHandler(LPVOID pParam)里面执行。

  a、孔加工  当用户加工准备就绪,按下启动加工的按钮的时候,线程开始自动读取加工链表gWorkList里面已经经过译码的数据,通过已知数据信息程序按照加工参数管理模块设定的速度发送运动指令给MPC08运动控制器,控制器发出脉冲使机床快速运动并定位到该孔坐标,接着以给定的下钻速度和下钻深度进行孔加工,然后再以给定的速度提升,提升的同时迅速定位到下一个加工孔的坐标位置。

  b、回零  准确的回零对机床的定位和加工起着重要的作用,本系统设计的回零方式借助于伺服电机的Z脉冲,当按下回零按钮后,程序的运动控制线程即按相应步骤发出回零指令给控制器,使机床准确的回零。设计的回零步骤为:各轴快速朝原点方向运动à碰到原点开关后缓停à缓停后反向低速运动à当接收到伺服电机的Z脉冲信号后停下来。机床即以停下来的坐标位置作为机床的原点。程序里面对每个步骤定义了一个宏,以此来区分加工到那一步骤。

  c、回停车位  当按下回停车位的按钮后,发出回停车位的指令,使机床的XY轴分别运动到加工前设定到加工参数管理模块的停车位坐标。

  d、换刀  钻床加工PCB板的时候需要加工不同直径的孔,这就要求在加工过程中当加工完一种直径的孔以后进行换刀,取到另外一直径的刀具进行加工。本系统的换刀方式有手动换刀和自动换刀两种。手动换刀就是在加工完一直径的孔后或刀具寿命到了以后回到停车位,由加工者手动把原刀具取下来并换上新的刀具然后恢复加工。手动换刀效率比较,现在的机床一般都采取自动换刀,本次设计的换刀流程如下:

  Z轴回零--压脚抬起--X轴移动到原刀库的位置--Y轴移动到原刀库的位置--Z轴移动到换刀位置--张夹头放刀--延时--Z轴回零--XY轴回到停顿位置--检查刀具放回了--Z回零--回到停顿位置--X轴移动到目标刀具的位置--Y轴移动到目标刀具的位置--Z轴移动到换刀位置--合夹头取刀--延时--Z轴回零--回到停顿位置--检查刀具取到了--Z轴回零--XY轴回到停顿位置--压脚放下

  换刀的软件实现同样是在运动控制线程里按以上步骤一步步完成,每个步骤类似回零步骤一样定义了一个宏来区分。当整个换刀流程执行完毕以后,机床继续加工剩余的孔。

  5)自诊断检测  自诊断模块对机床的调试,检测,状态监视起着重要的作用。通过本模块,使用者可以随时的检测到机床电器信号状态,包括机床输入到控制器的信号和使用者通过控制器输出到机床的控制信号。程序里是通过另一个辅助线程PubMonitorThreadHandler不断的查询MPC08控制器的状态寄存器,并构建如下的对话框显示出来。

  3 应用

  该系统利用了MPC08运动控制器的强大功能,并在模块化思想指导下进行软件编程,终有效的应用于PCB钻床的控制系统中,运行效果良好,并且通过了在PCB数控机床中高和速度的加工测试,加工使用0.1-0.3mm大小的刀径,孔间距为0.5mm,其各轴的速度,以及每分钟的钻孔个数均达到了预期的要求。

 

 



  
关键词:数控系统

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!