典型数控铣床控制软件模块化设计

2011-06-30 09:29 优胜模具

 本文介绍的典型数控铣床主要由机床操作面板、X、Y、Z三个直线坐标轴、上轴及机床的液压、润滑、冷却系统等机床辅助功能组成。机床的电气系统包括数字控制系统(CNC)、数字伺服驱动系统、主轴变频调速系统及机床输入输出PLC控制系统等。

  本电气系统主要完成人机对话和对三坐标机床坐标的进给、主轴的运转以及机床的液压、润滑、冷却系统等的控制。该机床的三个坐标采用HEIDEHAIN直线光栅尺全闭环反馈方式,机床主轴为电主轴,使用施耐德变频器控制,针对该机床的结构特点,其电气控制系统配置了法国NUM公司的NUM1050全数字数控系统,伺服驱动配置相应的MDLUNUMDRIVE数控式伺服驱动系统。

  这台三坐标机床的PLC控制程序是利用NUM1050全数字数控系统的内置式PLC功能,并配以相应的软件平台开发出来的。因而PLC程序的灵活性和易维护性与NUM1050数控系统的高性能有密不可分的关系。

  1NUM1050数控系统

  NUM1050是一种开放式的、功能强大的数字控制系统,采用64位的CPU68040,用于数据的处理和坐标的控制,具有处理速度快、位置控制精度高等特点。

  系统中的图形功能管理CNC面板显示和键盘:内存用来存储操作程序、PLC程序和用户文件:强大的通讯功能使CNC既可通过RS232串口又可通过网络接口与上位机进行通讯:轴控板用于控制数字轴或模拟轴的运动:内置式PLC通过输入/输出模块管理机床:CNC软件则管理加工程序、机床数据、计算机轨迹和速度以及监控坐标轴的运动。

  2NUM1050内置式PLC特点

  PLC使用NUM系统提供的输入/输出接口与外界进行数据交换,通过PLC的扫描周期刷新存储区内的数据,PLC读取数据是通过%I变量,而PLC输出给外界数据是通过%Q变量进行的。

  内置式PLC与NC之间则通过交换区交换数据,交换区中的内容是NC与PLC之间输入/输出的数据。NC输出给PLC的数据,PLC通过%R变量从交换区读取,PLC发送到NC的数据是通过%W变量放入交换区,由NC去读取,其扫描周期由系统自动执行。%R和%W所有变量的各字节和位都有特定的含义,专门提供给PLC用来控制NC的运行,并协调外接设备与NC之间的动作。

  3NUM1050PLC程序结构特点

  NUM数控系统的PLC编程有梯形图、汇编语言和高级语言(C语言)几种方式,其程序都采用任务模块和子程序模块来设计。PLC程序的任务模块包括:%INI、%TS0~4、%TF0~15、%TH0~15。子程序模埠%SP0~255,这些子程序可以由任务模块调用或子程序间调用。各模块的功能如下:

  初始化任务%INI:系统每次上电时执行一次。

  循环任务%TS:系统先执行%TS0,再按顺序执行TS1~4。%TS0的执行周期等于每个RTC(实时时钟控制)周期,即20ms,%TS1~4每5个RTC周期(100ms)执行一次。

  后台任务%TS比循环任务%TS和中断任务%TH的优先权低,可用于等待任务的使用。后台任务可持续数个RTC循环周期,可以被循环任务中断。

  中断(实时)任务%TH用于优先权较高的事件而不必等待RTC循环的结束。中断(实时)任务%TH比循环任务%TS和后台任务%TF的优先权高。

  错误信息表%9999.9:机床错误信息文件。

  4三坐标数控龙门铣床PLC程序的设计与实现

  PLC程序的设计离不开良好的软件平台和硬件环境,NUM1050数控系统为机床生产制造者提供了丰富的软件资源和强大的软件开发工具。如PLCTOOL,SETTOOL,PCTOOLKIT等。它们都是基于WINDOWS平台上使用,为机床电气控制系统开发带来了极大的方便。其中PLCTOOL可方便地进行PLC梯形图或高级语言C的编程,备有丰富的指令集与计时器、计数器单元,图形化的界面,使用操作灵活方便。这台三坐标数控龙门铣床的PLC程序正是在PLCTOOL软件平台上开发设计出来的。考虑到实际的应用,这台三坐标机床采用梯形图语言设计PLC程序,其优点是直观,可以动态显示,易于调试和维护。

  利用NUM1050数控系统提供的输入/输出模块和机床操作面板,可以非常方便地控制机床的运动及其他功能,因为机床操作面板带有可供编程的自定义键。NUM系统提供的机床操作面板通过光缆与系统相连,提高了可靠性。

  根据NUM1050的PLC程序结构特点,在设计这台三坐标机床的PLC程序时,将该机床的各项功能分配给不同的模块控制。因该机床无特殊的中断任务,所以设计程序时使用了初始化任务%INI、循环任务%TS和子程序模块%SP。%TS0的扫描周期为20ms,所以将重要的子程序放在%TS0中调用,机床的辅助功能如液压、冷却、润滑等则在任务模块%TS1~3中控制,机床的坐标、主轴及相关部分的控制由梯形图的子程序%SP模块承担。三坐标数控铣床的PLC程序结构及每一模块介绍如下:

  %INI:系统在其它任务执行前调用,仅在PLC上电时执行一次,不受PTC循环控制,主要对一些变量进行初始化。

  %TS0:调用子程序。%TS1:控制机床辅助功能导轨润滑和液压系统。其中导轨润滑周期由PLC程序中的定时器控制。%TS2:控制机床冷却系统。可以在机床操作面板上选择自动冷却和手动冷却。%TS3:控制机床主轴的松刀和刀具夹紧。

  %SP0:用于控制机床操作面板上的指示灯闪烁。NUM1050系统提供的机床操作面板上的自定义按键大部分带有指示灯,在使用一些需要特别提醒的功能时,其按键采用指示灯闪烁的方式,以示醒目,如机床故障复位键、换刀完成键等等。%SP2:控制机床操作面板的自定义按键。操作面板的自定义键必须经过PLC编程才能生效,而按键的功能则根据机床的需要来定义。根据用户的要求,这台三坐标数控龙门铣床的操作面板上设计了机床启动、冷却控制、主轴启停、换刀完成、机床故障复位等功能。%SP3:控制坐标运动及坐标限位的安全检查。%SP4:M功能译码,该模块用于定义换刀结束的M06功能。%SP5:控制坐标轴伺服使能。%SP6:该模块控制主轴部分的所有功能,包括主轴冷却、主轴润滑、刀具夹紧、主轴电机、主轴变频器等。%SP20:机床故障信息的显示控制。当机床出现故障时,在显示页面需要及时显示故障号和故障内容,当机床出现多条故障时,系统便可以按顺序显示故障,每条故障显示的时间在本子程序模块中设置。该模块被其它相关模块调用。

  这台三坐标数控龙门铣床的所有功能和控制均由以上各模块实现,其中%SP2、%SP3、%SP5和%SP6更是这台机床PLC程序的核心。用模块化方式设计PLC程序,可以对每一模块进行单独调试,提高了机床调试的效率,当调试过程中出现问题时,可以很快找到问题所在,而且机床的不同功能用不同的子模块来表示,程序结构一目了然。通过对每一个子模块的单独调试和最终的机电联调,都证明了这套PLC程序的设计思想和方法是行之有效的。

  5小结

  这台三坐标数控龙门铣床经过紧张调试后,机床工作正常,符合要求,机床达到验收标准。实践证明,这台三坐标机床的控制软件设计是成功的,并且设计开发的有些基本模块还具有良好的可移植性,在以后使用NUM1000系列数控的典型数控机床PLC梯形图设计中稍加改动使可加以使用,对以后同系列数控机床的PLC控制软件的设计打下了良好的基础。