张 亮
(温州职业技术学院 机械工程系,浙江 温州 325035)
数控技术在医疗器械、军事工业、航空航天等诸多领域已凸显优越的性能。五轴联动数控技术是数控技术的核心,具有高速、高精度、环保、智能、复合化等优点。相较于国外,国内数控系统及产品的研究水平还较低,现阶段国内使用的高端五轴数控机床大多依赖于进口,价格相当昂贵[1-3]。目前,国内工业机床的控制主要还是基于特定的工业PC机,功能比较有限,且系统更新升级较慢,无法满足制造生产中日益变化的控制需求。因此,将Android智能设备作为移动控制终端应用于数控控制领域,实现低成本、高精度、稳定、智能化控制是时代发展的潮流[4]。本文以Android嵌入式平台作为硬件平台、STM32F407作为运动控制芯片[5],开发一种五轴联动数控系统。Android系统具有丰富的功能接口,基于Android的五轴联动数控系统减少了硬件设计,降低了成本,且可远程控制,提高控制系统的灵活度。同时,为验证系统的可行性,设计一台五轴微型数控雕刻机作为测试平台,通过实际加工具有复杂表面结构的零件,检验系统的性能、应用可行性及工程价值。
目前,常见的数控系统主要为基于PC的开放式数控系统和基于微处理器的嵌入式数控系统。本文设计的数控系统采用“嵌入式平台+可编程运动控制芯片”串联式闭环控制结构,以Android嵌入式平台作为硬件平台、STM32F407作为运动控制芯片,具有硬件选择性强、功能可靠稳定、远程便捷控制、成本较低等优点。
根据五轴联动数控系统功能要求[6],为了使系统在结构设计和功能实现上更加紧凑灵活,将系统整体划分为上位机(中央控制系统)和下位机(运动控制系统)两部分。基于C/S架构模式,上位机Android终端和下位机采用全双工高速通讯,工作时上位机发送运动命令;下位机接受命令,并经过代码编译、脉冲发送、输入输出信号等处理后发出对应的脉冲数据给伺服电机,并将传感器接收到的机床工作状态及运动参数反馈给上位机模块。系统总体结构如图1所示。
图1 系统总体结构
上位机主要承担操作面板、手摇控制器、外部输入接口、移动存储设备、触屏信息、远程网络通讯等人机交互功能;下位机主要承担插补、进给伺服、代码编译、误差补偿等强实时性任务,以及电主轴控制、机床开关量的控制、反馈信号的处理等底层硬件控制功能,对接收到的信号进行分析处理,发出脉冲指令给伺服驱动器,由伺服驱动器驱动伺服电机,实现机床本体的运动控制。伺服驱动器检测到的伺服电机电压电流、负载情况、报警信息反馈给运动控制系统,以监控伺服驱动器工作情况。运动控制系统配合中央控制系统共同对辅助输出系统如刀库、切削液、润滑系统、排屑系统等进行控制。检测传感器如编码器采集机床位置数据反馈给I/O输入系统,再由I/O输入系统分别反馈给中央控制系统和运动控制系统进行位置与速度等补偿,实时进行误差跟随补偿,以确保加工精度实现全闭环控制。系统工作流程及其内部运行原理如图2~图3所示。
系统功能有以下要求:以UG三维软件建立三维模型并经UG自建后处理软件,生成刀具加工G代码程序,系统上位机读取数据并对其进行处理和插补修改,形成适合运动控制卡的加工信息。由操作界面将加工信息通过网络通讯发送给下位机,下位机将进行插补计算并加工信息,发送伺服电机驱动器和变频器。伺服电机驱动器发出电子脉冲给控制直线运动和旋转运动的伺服电机,控制旋转速度,变频器发出电子脉冲给电主轴控制刀具运转速度,从而完成机床的走位和加工。此时,位移传感器反馈各个轴运动位置信息给上下位机,实现全闭环控制。通过操作界面上的相应按钮输入对工作流程的控制信息(如加工开始、结束、暂停、自动加工、手动加工、回零处理等),通过上位机和下位机的相互信息协同完成零件加工和实时监控。
图2 系统工作流程
图3 系统内部运行原理
上位机硬件系统主要包括主控芯片(Exynos4412 64位芯片)、高清触屏、通讯模块、控制系统异常报警电路和GPIO按键模块等。除常规性的基础电路外,下位机硬件系统主要包括基于STM32F407的芯片电路、伺服驱动电路、电主轴变频控制电路、手轮控制电路、继电器控制电路及信号反馈电路等,最为关键的是伺服驱动脉冲定位电路和电主轴DC0-10V模拟量控制电路。
采用STM32F407芯片,额定电压为3.3V,一般伺服驱动器所能识别的脉冲电压为5V左右,综合考虑稳定性、可靠性和响应速度,选择东芝公司生产的TLP115A型5引脚高速光耦作为脉冲隔离输出光耦。TLP115A电气原理及电气特性如图4所示。
图4 TLP115A电气原理及电气特性
为了提高加工零件的表面精度,主轴系统采用电主轴控制单元,主要组成部分为变频器和主轴电机。采用PWM占空比方式输出DC0-10V模拟量控制电主轴转速。STM32F407芯片中PF8引脚作为PWM信号输出引脚,设置占空比方式,将PF8引脚采用TLP115A高速光耦芯片隔离输出,将PWM波由3.3V转换成5V,再采用LM358P作为模拟量输出主芯片,将PWM波转换成DC0-10V模拟量电压。其具体硬件(LM358)电路如图5所示。
图5 LM358电路
系统软件模块主要用于管理加工程序,实现对机床各个轴电机的运动控制。系统上位机基于Android系统,编程语言为JAVA;下位机开发工具为Keil5,编程语言为C语言,调用STM32F407运动控制卡提供的库函数,实现各个轴的运动控制。系统软件模块主要包括人机交互模块、编译模块、运动控制模块等。
上位机程序主要为人机交互模块,其功能是显示人机交互界面信息和关键参数设置。系统人机交互主界面(见图6)通过一个Activity类加以实现,每一个按钮、显示框、编辑框都在该类中声明、定义、使用消息机制加以实现。该界面主要包括程序段显示区、坐标位置显示区、进给倍率调节区、3D图形显示区、功能按键区。
下位机主要为编译模块和运动控制模块,包括伺服驱动控制、插补计算、速度控制、GPIO控制、编码器反馈等。系统发送各个轴脉冲序列,实现伺服电机的驱动控制,控制脉冲之间的时间间隔等效于控制伺服电机的转动速度。为了保证平稳、快速输出脉冲数据,在下位机专门安放一个高速定时器,负责脉冲计算与脉冲输出。采用全闭环速度模式PID数据采样插补法,将插补曲线拆分为若干个细小直线段进行插补。在插补过程中,采集当前刀具位置、计算当前点矢量、计算插补误差量、综合矢量与速度等参数,保证各个轴加减速的平滑稳定性,避免加速度的冲击;在两个轨迹点之间插入密集化点,刀具按轨迹点插值路径运行。
图6 系统人机交互主界面
为了验证系统的可行性,设计一台五轴微型数控雕刻机作为测试平台。数控雕刻机是一种采用数控技术的专用机床[7]。根据雕刻机功能要求,采用Altium Designer Summer 09软件设计PCB图并制作控制电路板(见图7),搭建线路完成一个零件的雕刻加工。经UG CAM编程得到实际加工刀具路径的G代码文件,利用雕刻机和系统进行实际加工。五轴微型数控雕刻机样机如图8所示。从加工结果可知,系统可有效实现五轴数控机床高效、高精度的联动加工,且可达到预期精度0.005mm。
本文提出一种以“Android系统+STM32F407运动控制芯片”为系统控制核心,可远程控制的五轴联动数控系统。该系统采用模块化设计,具有丰富友好的人机界面和优良的开放性能,支持多种操作平台,有较强的可移植性,维修更简易,质量更可靠,增强了开放式数控系统的市场竞争力。该系统创新点体现在以下几个方面:一是模块化设计。系统各模块相互独立,可让用户在较大范围内根据要求配置系统,如机床轴数、I/O点数等,而当系统硬件改变时,只需简单修改数控系统软件,即可满足要求,具有更大的灵活性,更能适应市场的动态变化。二是具有丰富友好的人机界面。用户可在系统环境下使用不同的编程语言随心所欲地开发适合个人用途的人机界面,如某些特殊机床的专属控制功能,而不必过多地考虑系统控制器的核心部分。三是具有优良的开放性能。系统能方便地挂上第三方应用软件,如各种CAD/CAM软件、测试软件或管理软件,以满足用户所需,开放式系统可集众家之长。四是支持多种操作平台。系统结构更好地支持windows, android, win CE, Linux,Unix, RTOS等不同操作平台。测试结果表明,该系统可有效实现五轴数控机床高效、高精度的联动加工,且可达到预期精度0.005mm,具有应用可行性与工程价值。
图7 五轴微型数控雕刻机控制电路板
图8 五轴微型数控雕刻机样机