, , ,,
(浙江工业大学 信息工程学院,杭州 310023)
近年来现代电子技术发展迅速,电子设备的生产和制造正向着智能化、高速化、高精度等方向发展,电子组装技术的快速发展是现代电子技术发展的重要体现[1-2]。表面贴装技术(SMT)是目前电子组装行业里最流行的一种技术和工艺,是一种涉及多项内容,将电子元器件贴装到PCB电路板上的综合技术[3]。人们对贴片机控制系统的研究取得了一些成果,如文献[4-5]设计了一种由工控机、运动控制卡和步进电机驱动器组成的贴片机控制方法;文献[6]设计了一种由PLC和步进电机驱动器组成的贴片机控制系统;文献[7]设计了一种基于DSP微处理器的运动控制板和伺服驱动系统组成的贴片机控制系统;文献[8]设计了一种紧凑型贴片机异构多核可编程自动化控制器(PAC)[9-10];文献[11]中设计了一种基于STM32F10X系列微处理器的控制系统,但是都没有设计良好的闭环控制器。
在位置精度控制研究中,传统的PID控制算法以其结构简单、易实现等优点仍被广泛应用,但是常规的PID控制算法对多变量、强耦合的非线性系统难以达到理想的控制效果。为此,人们探索了一些智能算法应用于贴片机控制系统中的位置精度控制,如模糊逻辑控制[12]、自适应模糊PID控制[13]、BP神经网络控制[14]、RBF神经网络自适应控制[15]。相比传统的PID控制,智能算法的应用在一定程度上提高了位置控制精度,但是以上算法中没有很好的考虑了系统内外干扰对贴片精度的影响。
根据以上所述,本文设计了基于STM32微处理器的贴片机运动控制系统,并且在位置精度控制中,考虑了内外扰动对系统的影响,设计了基于ADRC的闭环位置跟踪控制器[16],其线性扩张状态观测器(LESO)能够实时估计系统内外扰动,并通过设计的误差补偿控制律进行补偿,实现较高精度的位置跟踪控制。在实际贴片机控制系统测试中,系统运行稳定,抗干扰性较好,位置精度较高,满足了贴片机控制系统的要求,表明了所设计的控制算法的有效性及控制系统具有一定的应用价值。
贴片机控制系统主要包括:贴片机架构、上位机软件、运动控制器。系统的整体框图如图1所示。上位机部分主要完成PCB板数据信息的存储和解析,并通过串口通信下发到运动控制器,数据信息包括元器件的种类、对应位置的坐标、对应取料的料站编号、速度等;运动控制器接收并解析来自上位机软件的数据信息,根据相应的控制命令控制执行机构运行,同时,运动控制器实时接收来自执行机构反馈的位置信息,通过闭环控制器进行位置跟踪精度控制;595外扩I/O模块用于控制料站送料气压开关的电磁阀;五个步进电机驱动器分别驱动X,Y轴、机头上下移动的Z轴、吸嘴旋转电机1和2;正负压气泵分别完成料站送料和吸嘴取放料。
图1 系统整体框架图
贴片机控制器硬件结构如图2所示,其控制核心是STM32F103C8T6微处理器,主要模块有:串口通信模块、USB接口模块、步进电机驱动模块、Flash存储模块、编码器数据采集模块等。
图2 系统硬件结构图
为了实现运动控制器与工控PC机之间的数据信息快速交互,工控PC机与运动控制器之间采用串口通信模式。根据实际控制要求设定上下位机的通信协议,根据通信协议,工控PC机将PCB版图中相关的元器件数量、位置坐标等信息以及控制命令等通过串口通信模块下发到下位机,控制器收到相应数据信息和控制命令后执行操作。
USB接口模块的设计主要是用于下位机运动控制系统的程序更新。为了方便日常生产中因需求改变需远程对程序进行升级,进而设计了可通过USB接口离线程序更新升级功能,该功能极大方便了系统的升级。
在整个控制系统中总共有5个步进电机,控制机头纵向和横向运行的X,Y轴,选用型号为DM756D的步进电机驱动器,机头上下移动的Z轴电机和吸嘴角度旋转电机1和电机2均使用型号为HB420驱动器,旋转电机是为满足PCB板上元器件不同角度的贴放。控制机头纵向和横向运行的X,Y轴电机是需要高精度控制,因此在这两个步进电机控制中添加了闭环控制器来提高位置精度,每个步进电机都安装编码器实时反馈信息,当出现失步的现象时,闭环控制器会自动进行补偿来出现的控制偏差。
该存储模块主要用于存储上位机下发的各类PCB版图中元器件信息,包括数量、位置坐标、角度、产量等数据信息;用于存储运动控制过程中系统采集反馈等相关数据信息。
系统位置信息的实时反馈由编码器完成,为了能提高贴片机的位置跟踪精度,设置了闭环控制,根据编码器反馈的实时位置信息与系统设定的参考轨迹信息作差可得到位置的误差信息,进而根据误差信息作反馈控制,进一步提高位置的跟踪精度,从而提高贴片机的贴片精度。
正压气泵直接由220 V电源供电,电机驱动器的供电电压为24 V,芯片供电电压为3.3 V,为了能够使得电源处的电压稳定、波纹小,我们采用220 V的电源输入经开关电源调节分别输出所需24 V和5 V的电压,芯片所需的电压由 SPX117-3.3转化得到3.3 V电压。
该系统中总共有48个独立料盘,通过一个总的正压气泵来分别驱动对应的料盘,由电磁阀来控制气压开关,当吸嘴在对应的料盘完成一次取料后,电磁阀完成一次开闭,相应的料盘送料一次。由于48个料盘对应48个电磁阀,因此需要有48个对应的I/O口,故通过6片595芯片级联的形式扩展成48个I/O口,正好满足系统需求。吸嘴在取放元器件过程中需要有正负压的气泵协同工作,因此,系统设计了一个正压和一个负压气泵来完成取放料。
贴片机X,Y轴运动控制的工作状态是高加速、高速的点到点之间的运行,并且要实现高精度的位置跟踪。为了达到运动控制系统平稳、快速、精确位置跟踪的要求,关键在于设计有效的控制算法实现误差补偿控制,特别是针对系统位置的内外干扰,这些干扰随着系统工作状态的变化而变化,具有很强的非线性,例如系统因步进电机快速启停,容易出现抖动,这就会对贴装的精度产生影响,因此需要通过控制器设计有效的算法进行补偿。
2.8.1 传统的PID控制算法
PID控制算法一直以来是工业控制中应用最为广泛的算法,其最大的优点就是不需要被控对象精确的数学模型来进行复杂的理论计算,只要在线根据被控量与给定值之间的偏差以及偏差的变化率等简单的参数,将偏差的比例(P)、积分(I)、微分(D)通过线性组合构成新的控制量,对被控对象进行控制,PID的控制结构图如图3所示。
图3 PID控制结构图
其控制算法表示如下:
(1)
2.8.2 自抗扰控制算法
ADRC是一种集经典控制理论和现代控制理论的算法,该算法由经典的PID算法演变而来,采用了PID误差反馈控制的核心思想,ADRC的核心是将系统未建模动态和未知外界干扰都归结为对系统的“总扰动”,通过扩张状态观测器进行估计,并设计相应的误差补偿控制律进行补偿。
设计基于线性自抗扰控制(LADRC)的单轴位置跟踪控制器,包括设计线性跟踪微分器(LTD),线性扩张状态观测器(LESO)和线性反馈控制律,其控制结构如图4所示。
图4 自抗扰控制结构图
设计线性跟踪微分器,安排过渡过程给定信号xi0作为参考输入,经过跟踪微分器获得参考位置的近似微分信号xvi(k),同时还可以获得参考位置的过渡值xpi(k),将设定的参考信号平滑化,防止产生超调,其形式如下:
(2)
其中:ri为跟踪微分器的快速因子,fhi(k)为xvi(k)的微分值。
设计线性扩张状态观测器,对系统的状态和总和干扰(系统的内外干扰)进行实时估计与补偿,其形式如下:
(3)
(4)
其中epi(k),evi(k)分别为第i轴系统的给定信号过渡值xpi(k)与位置估计值zpi(k)的误差,给定信号的微分值xvi(k)与速度估计值zvi(k)的误差,ui0(k)为误差反馈控制量,ui(k)为最终的控制量。
整个贴片机软件系统主要由上位机软件和下位机软件组成,如图5所示。
图5 系统软件结构图
上位机软件是在Windows7操作系统下,基于Visual Studio环境开发的。由图5可以看出,上位机软件包括人机交互界面设计以及上位机与下位机协调程序设计等,其主要负责系统的总体管理,由多个操作界面组成,包括:开机主界面、文件管理界面、手动调试界面、自动运行界面、生产监测界面等,相应的PCB板数据信息通过串口依次发送到下位机。
下位机系统软件编译环境采用ARM公司推出的针对各种嵌入式处理器的软件开发工具RealView MDK,它提供了完善的设备调试和软件仿真功能,包含了众多的案例模板和固件实例,支持多种调试接口(如UART、JTAG 及JLINK等),可大大减小开发难度,缩短开发周期[12]。下位机系统软件主要包括:贴片机运动控制系统、生产运行监测系统、PCB数据管理系统、安全保护系统等,其主要功能是用来实现各个轴的运动控制、各种参数及生产数据管理、安全监测等。
在系统上电运行过程中,上位机负责整个系统的协调工作,完成整个系统的管理;下位机运动控制器则负责对系统运动的控制和协调。通过上位机和下位机的协同控制来完成整个贴片机控制系统的总控制,系统的控制流程图如图6所示。
图6 系统控制流程图
根据上文贴片机整体框架和软硬技术,本文所设计的贴片机实物测试平台如图7所示。
图7 贴片机系统实物图
通过该平台进行了手动测试和全自动贴片测试,基本已经能达到贴片要求,与此同时,根据贴片机高精度的要求,分别测试了以传统PID控制算法设计的闭环位置跟踪控制器和以LADRC设计的闭环位置跟踪控制器。系统的位置跟踪精度测试过程如下:上位机完成期望轨迹的规划,并将该轨迹分解生成对应轴的参考轨迹,将数据信息通过串口通信发送到下位机控制器,下位机控制器接收来自上位机的数据信息,生成相应的控制命令发送给执行机构,同时,运动控制器实时接收来自步进电机编码器反馈的信息,计算相应的位置偏差,并通过控制算法生成新的控制量。位置跟踪控制采用正弦函数作为参考曲线,通过多次调试选取相应参数,LADRC控制器参数为kpx=kpy=0.5,kdx=kdy=0.5,bx0=by0=20,rx=ry=120,ωx=ωy=110,PID控制器参数为kp=64、ki=3.5、kd=7,其实际实验测试结果如下图所示,图8是基于LADRC单轴位置跟踪控制效果图(包括参考曲线、实际曲线和LESO估计的曲线),图9是基于LADRC和PID控制的单轴位置跟踪误差对比效果图,图10是两种控制方法误差累积对比图,从图9和图10可看出相比传统的PID控制LADRC控制的效果更好。表1是两种位置跟踪控制算法的实验数据,由表中数据可知相比传统PID控制,LADRC控制的累积误差减少了56.78%。通过上述实际实验测试结果可知本文设计基于自抗扰控制器的控制系统具有更好的位置跟踪控制效果。
图8 单轴位置跟踪效果图
图9 误差变化对比图
图10 误差累积对比图
表1 位置跟踪实验数据
本文设计了基于STM32的贴片机控制系统,控制系统结构简单,运行稳定,相比市面上复杂的贴片机控制系统有着更好的操作性和可靠性。针对贴片机系统高速、高精度的要求,本文解决了X,Y轴高精度的位置跟踪控制,该系统在运动控制器的设计中采用了具有干扰估计补偿的自抗扰控制器,较好的处理了因系统快速启停引起抖动等未知内外干扰的影响,通过与传统PID控制比较,表明了所设计控制器具有较好的控制性能。