[资料分享] 基于嵌入式的数控雕刻机控制系统设计

fish001   2019-8-9 22:15 楼主

      随着科学技术和制造技术的不断发展进步,数字控制的雕刻机渐渐成为雕刻行业的专用工具。数控雕刻机从加工原理上讲是一种钻铣组合加工,是一种典型的机电一体化产品,在模具雕刻、广告制作、装潢等行业有着广泛的市场应用。
  目前市场上的数控雕刻机控制器硬件平台所用的微处理器主要包括:以8位单片机为内核,这类产品的价格低廉,设计比较简单,但是有功能单一、性能差、效率低、存储容量小、独立工作能力较弱、实用性能不强、定位精度不高、人机交互复杂、操作不方便等缺陷;以DSP为内核,这类雕刻机具有较强的性能及效率,实时性较强,成本适中,但是功能还是比较少,同样缺少独立工作能力,无法满足人机交互界面、外围电路接口、网络等方面的要求。
  本文提出了利用32位ARM9处理器与FPGA相结合来取代上述单片机与工控机的联机控制,以Windows CE.net操作系统为平台,由ARM完成速度控制, FPGA完成轨迹控制。在轨迹控制中结合了步进电机的转矩-频率特性,使电机的轨迹精确而且平稳。整个控制系统一体化完成从原始数据读取到最终控制信号的输出,彻底摆脱了对工控机的依赖;通过控制键盘设置不同的脉冲当量及电机运行参数,可与适用于各种场合的雕刻机床相配合使用,控制精度高、通用性强。
  控制系统设计
  一个嵌入式系统必定是由嵌入式硬件和嵌入式软件组成;嵌入式硬件主要包括嵌入式处理器、外设控制器、接口电路等;嵌入式软件主要包括启动程序、嵌入式操作系统、应用软件等。嵌入式处理器是嵌入式系统的硬件核心;嵌入式操作系统是嵌入式软件的核心。
  硬件系统
  硬件系统主要由以下三个部分组成:
  (1)处理器(ARM9):作为控制器的处理器,在ARM上移植了Windows CE.net操作系统,人机互动方面要完成对LCD显示的控制和读取控制键盘的控制命令;在雕刻方面要完成对原始数据的读取(通过USB接口)、预处理、分析和计算,并将计算结果传递给FPGA,与FPGA协同完成对步进电机的控制。
  (2)FPGA:对接收到ARM发出的数据进行插补运算,并根据插补结果计算出控制步进电机的脉冲数目和延时,最终完成对步进电机的控制实现三轴联动的雕刻。
  (3)人机交互界面:人机交互界面主要包括了键盘和LCD。几乎所有关于雕刻的信息都实时的显示在LCD上;机床的脉冲当量以及雕刻最大速度和加速度等参数则是通过键盘设定的,同时在雕刻中键盘还可以根据需要输入特殊指令。
  硬件系统总体框架如图1所示。整个硬件核心为基于ARM920T的三星S3C2440处理器,搭配有64MB SDRAM作为系统的内存,128MB FLASH作为系统的外存,相当于硬盘,以便在断电后保存各种系统程序以及调试下载电路。外围辅助设备包括USB接口:大部分加工文件保存在U盘中,需要读取时从U盘调入,以节省FLASH存储空间;触摸式LCD:用来提供系统的显示以及操作;网络接口:用来提供网络服务,方便远程更新程序;控制键盘:用来提供加工时所需的操作,包括点控、起停和加减速等。与上位机通信通过串口或者USB接口,可实现在线调试或者在上位机中显示实时信息。FPGA与ARM以及过桥板相连,从ARM中获取数据并转换成控制信号,经过桥板放大电路放大,发送到步进电机的控制电路中。


  图1 硬件系统总体框架
  软件系统
  系统的软件选用了嵌入式实时多任务操作系统Windows CE.net。根据雕刻机控制系统的需求,系统任务模块可以分为:人机界面模块,USB接口模块和雕刻控制模块。其中人机界面模块包括LCD显示和键盘指令的读取;通过USB接口模块读取原始设计数据;雕刻控制模块对读取的数据分析计算后完成速度控制和轨迹控制。软件结构图如图2所示。
  控制系统中,ARM通过对设计数据的分析和计算完成速度控制,FPGA通过插补运算完成轨迹控制。控制系统应用程序流程图如图3所示。
  图2 系统软件结构图


  图3 控制系统应用程序流程图


  (1)读取数据,找出可在速度不出现突变的情况下可雕刻的最小单位的线条数,称之为判“S”。分别计算“S”中各轴的位移总量,定义“Sx”,“Sy”和“Sz”分别为x,y和z轴的位移总量。
  (2)根据操作设置的雕刻最大速度和加速度,计算出该段位移中各轴的速度分量和加速度分量。
  (3)判断当前数据处于哪种速度段,根据不同的情况计算各段位移的加速、匀速、减速段的脉冲数和各速度段的初始频率等这些数据,并把数据发送给FPGA。
  (4)FPGA根据接收到的数据进行插补运算,最终控制步进电机的转速,实现三轴联动。
  雕刻机连续轨迹控制
  在数控加工中,运动控制器通过插补算法来控制刀具相对于工件以一定的速度,按照给定的路径运动切屑出零件轮廓。插补技术是数控系统的核心技术,它主要解决控制刀具与工件运动轨迹的问题。本系统的插补运算是在以ARM9为核心的嵌入式处理器中完成的。
  以二维基本直线条的插补运算为例,首先根据脉冲当量,分别计算出XY轴各自的总待发送脉冲数mx和my。设定XY中脉冲数较多者为基础轴并将其作为参考轴,目的在于选取一个稳定的参考轴,以方便各脉冲发送的计算。实际运算时(以X轴为基础轴),根据加工速度以及脉冲当量,计算出基础轴发送脉冲的频率f,在每一个时间间隔内,均发送一个基础轴脉冲并累加发送次数m。
  当时,则在
  式1
  时,发送一次短轴脉冲。当时,则需要在 ([ ]为取整运算)后,延时后发送一次短轴脉冲。在式1中,倍数n亦可以看作是短轴的计数器,则当m=mx,即n=my时,插补运算完毕。该数字积分法脉冲发送示意图如图4所示:
  在图4(a)中,线段XY两轴比例为2:1,如果刻画动点按照既定路径运动,则XY两轴运动速度比为2:1。依据步进电机的控制规律,控制两轴的脉冲频率比同为2:1,且两轴脉冲发送数量比为2:1。根据上面的数字积分插补算法,首先计算出X轴的脉冲发送频率,在每一个时间间隔内,均发送一个基础轴脉冲,并且每隔2个基础轴脉冲即发送一个短轴脉冲,从而使短轴脉冲的频率为0.5,当基础轴发送完毕时,短轴脉冲亦发送完毕,数量与计算得出的相符。当两轴比例为3:2时,如图4(b)所示,则在每1.5个基础轴脉冲发送后发送一个短轴脉冲,有效的保证了脉冲发送比例,从而保证了刻画线段的精度。
  圆弧插补时,首先依据圆弧允许半径误差er计算出拟合弦长:
  (r为圆弧半径) 式2
  再根据拟合弦长l计算出对应的圆心角:


  式3


  图4 插补算法脉冲发送示意图
  通过弦长对应的圆心角将原圆弧重新划分为多条拟合直线,然后通过直线插补的方式完成圆弧刻画。
  该运算方式不再依赖每一次计数器的累加运算,而是依据速度矢量合成原理,通过控制各轴脉冲的发送比例,使合成点按照加工轨迹的方向运动,达到加工目的,避免了重复性的积分累加运算,可以一次性将所有脉冲数据运算完毕,只要按照一定的频率发送即可。
  插补算法的程序流程图如图5所示:


  图5 数字积分法插补流程图
  首先判断是否有外部中断信息输入,包括系统需求中的机械信号,如机床原点、工件加工原点、换刀、主轴调速和断电保护等输入/输出信号等,以及操作人员输入的暂停、停止加工、人为加、减速控制等信息。中断程序响应时需要保护好程序已经运算出的相关关键信息,包括读取的加工段落数据信息以及已经加工的段落位置信息。
  其次依据脉冲当量的定义:相对于每一脉冲信号的机床运动部件的位移量,得各个加工轴脉冲总数为:


  (其中l为每一轴的长度分量)
  式4
  并选出具有最大加工脉冲数的轴作为基础轴。电机控制器还需要脉冲的方向信息,脉冲方向由事先约定好的方向规定来确定,可通过读入的数据文件判断。插补计算初始化阶段设置各计数参量初始值,如图5数字积分法插补流程图中所示,COUNT存储基础轴与短轴之间的比例值,其数值为:基础轴脉冲数/短轴脉冲数;LONG为基础轴的累加统计变量,基础轴每发送一个脉冲,其值加1;SHORT为短轴的累加统计变量,初始化阶段将COUNT的值赋予SHORT。每次插补运算以基础轴发送一个脉冲开始,并累加LONG中的值;然后判定LONG的值与SHORT值的整数部分,当两者相等时,表示此时将发送一个短轴脉冲,不等时则继续发送一个基础轴脉冲。发送短轴脉冲时,由于短轴的脉冲是跟随基础轴发送,所以计算其继基础轴发送后,所需的延时发送时间,其延时数值为1/f(SHORT-LONG),并将COUNT的值累加到SHORT中,新的SHORT值作为下一次发送短轴脉冲的判断基准。每次计算各个发送轴后,都将产生一组固定的信息:脉冲发送标志位,脉冲延时时间和脉冲方向标志位,这些信息将被进一步加工生成发送到FPGA中的控制脉冲信息。
  结果分析
  将ARM作为主运算处理器时,其上不仅要运行插补程序,进行实时的加工信息读入、速度控制预算以及脉冲发送的计算,同时还要运行后台操作系统,并处理用户输入信息,如果再在其上设定延时程序并控制脉冲发送,则ARM的运算负担将变得过重。因此,采用FPGA协处理运算方案,辅助ARM进行脉冲的延时发送。
  设FPGA的频率为


  ,则其进行一次基数累加计算时间为


  ,电机的当前执行速度为Vs,脉冲当量为,则当前的发送脉冲的频率为:


  式5
  则此时每个脉冲的间隔换算为FPGA的累加次数则为:


  式6
  在加减速阶段,采用指数方式,其中基础轴每一段的频率变化为事先计算好的,即式6中的fs为特定值,而对于短轴来说,其延时发送频率值可由计算时使用到的公式1/f(SHORT-LONG)求得,即每一步脉冲的频率用式6即可确定。ARM在计算每一次脉冲的发送时,需要将脉冲的延时计数次数一并计算,然后与脉冲发送的方向一起送到FPGA中。步进电机控制器对控制脉冲的持续时间有一定要求,设其需求的脉冲持续时间为TP,则FPGA中,脉冲的持续时间计数:
  式7
  FPGA通过送来的脉冲方向以及脉冲计数次数,即可以计数延时的方式,将此脉冲按照理论的计算频率发送至步进电机控制器,完成对电机控制器的控制脉冲发送。发送的控制波形图如图6所示:


  图6 各轴脉冲发送波形图
  由图6可以看出,该插补算法不仅发送脉冲均匀且成比例发送,短轴可依据自己的频率变化规律对电机进行控制。
  结语
  根据雕刻机的实际需求和步进电机的转矩-频率特性,开发出了基于嵌入式的数控雕刻机控制系统。该系统硬件上以ARM与FPGA为核心,软件上以Windows CE.net操作系统为平台,结合步进电机的固有特性和插补程序,使得雕刻机三轴联动完成各种雕刻文件。实践表明,该控制器可以脱离工控机的支持,独立完成对原始设计数据的分析和计算,并最终通过插补算法控制电机完成雕刻,在雕刻过程中可以精确的做到速度控制和轨迹控制。

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复