程汉涛,王学俊,孔新伟,周晨晨
(大连工业大学机械工程与自动化学院,辽宁大连116034)
贴片机可视化运动仿真系统设计与实现
程汉涛,王学俊*,孔新伟,周晨晨
(大连工业大学机械工程与自动化学院,辽宁大连116034)
贴片机在制造过程中,需要进行贴装测试工作,进行这项工作不仅需要消耗基板、元件而且费时费力,对贴片机的调试工作也很麻烦。为了解决以及更多的了解这方面的技术问题,从可视化动态仿真的角度提供新的思路,通过建立贴片机三维模型、实现贴片机可视化运动仿真、对仿真系统进行测试与优化几个方面对贴片机技术进行研究设计,实现了贴片机的可视化运动仿真,使贴片机的工作流程清晰形象的展现出来。
表面贴装;三维建模;仿真;OpenGL
表面贴装技术SMT(Surface Mounting Techno-logy),是指根据PCB板上元器件坐标值,通过自动组装设备,精确贴装到印制线路板(或者其他基板)上的过程,然后进行加热固化,最后进行必要的清洗工作,以达到元器件自动焊接到基板上的一种电子元器件装联技术。贴片机是一种精密的工业机器人,是机、电、光以及计算机控制技术的综合体,它通过吸取、位移、定位、放置等功能,在不损伤元件和印制电路板的情况下,实现了将SMC/SMD元件快速而准确地贴装到PCB板所指定的焊盘位置上[1]。
我国的贴片机大部分依靠进口,贴片技术依然有待于追赶世界先进水平。目前,贴片机朝着高性能、高精度、智能化、模组化发展。贴片机的虚拟仿真技术还在理论准备或者实施准备阶段。因此对贴片机的仿真系统有很大的研究空间。
完整的贴片机可视化仿真设计不仅可以满足工业的虚拟制造需求、贴片机的调试需要[2],还可以应用到贴片机的教学过程中。贴片机可视化仿真系统在产品的销售环节会大幅度的提高贴片机产品的市场竞争力。
贴片机仿真系统的需求主要包括两个方面:应用程序使用的需求分析和贴片机模型建立的需求分析。
贴片机仿真系统需要通过OpenGL图形编程接口实现贴片机的三维建模以及动画控制,将贴片机的结构以及贴装工作过程直观地显示出来。
在计算机操作系统的控制下,贴片机在重要部件如贴装主轴、动/静镜头、吸嘴座和送料器上进行了Mark标识,贴装头根据导入的贴装元件的封装类型、元件编号等参数到相应的位置抓取吸嘴后,吸取元件;静镜头依照视觉处理程序对吸取元件进行检测、识别与对中;对中完成后贴装头将元件贴装到PCB上预定的位置[1]。这一系列元件识别、对中、检测和贴装的动作都是工控机根据相应指令获取相关的数据后指令控制系统自动完成。
贴片机的组成根据不同贴片机的类型稍有区别,本文选取动壁式贴片机为仿真原型,基本组成部分包括:机架、基板的传送机构和支撑台,X、Y以及Z伺服系统、定位系统、光学识别系统、供料架、贴片头等等。
在进行贴片机程序建模之前,首先根据贴片机的组成对贴片机的模型进行适当的简化工作,保留其中对贴片机仿真过程不可缺少的部分。针对该系统仿真的需求,设计保留如图1所示的贴片机的组成部分进行程序建模,保留部分包括:机架,基板的传送机构和支撑台,X、Y以及Z伺服系统,供料架,贴片头部分。贴片机的定位、光学控制系统等进行省略,以便适当简化程序建模的工作量。
图1 贴片机保留部分结构图
根据贴片机仿真系统的需求,对贴片机仿真系统的需求以实例的方式直观系统的展现,首先基本的操作流程如图2所示。
图2 贴片机具体使用流程图
通过读取PCB_CNC/CAM数据提取系统生成的CGF格式文件,获取贴片机仿真系统系统仿真过程中所需要的数据,主要包括如图3所示的选择贴装的元件的器件标志、元件料位、元件贴装坐标等信息。在获取仿真系统所需要的元件信息后,需要在贴装元件信息显示区域的信息栏中显示当前等待或者正在贴装的元件的信息,从而使操作者对仿真过程的工作状态有详细的了解。
图3 贴装元件信息显示区域示意图
贴片机各个部位的模型数据结构体组合构成了贴片机的整体数据结构,简单列举如下:
在绘制贴片机图形钱首先考虑到OpenGL绘图时避免发生闪烁现象,所以采用OpenGL的双缓冲绘图技术。双缓冲技术是指在两个缓冲区内存中绘图,当一个缓冲被显示时,另一个正在绘图,当一帧图形绘制完后两个缓冲区就进行交换,这样就大大提高了绘图的速度而且不会看到不完整的帧[3]。在OpenGL完成绘图操作之后中使用SwapBuffers()交换缓冲区内容从而实现双缓冲绘图。
在绘制贴片机的三维模型过程中需要通过多次的坐标系统的平移和旋转来实现贴片机模型的绘制过程,最终实现贴片机模型如图4所示。
图4 OpenGL绘制的贴片机模型三维效果
2.1 CGF文件格式的解析
贴片机仿真系统是通过读取PCB_CNC/CAM数据提取系统生成的CGF格式控制命令文件获取贴片元件信息的,CGF文件包含当前料槽的配置、料槽内器件的行列间距、料槽内器件厚度、角度等配置参数,以及待贴装元件信息及其贴装坐标位置。CGF格式文件的结构主要包括3个部分,分别是:文件头部分、料槽信息部分、元件信息部分。
文件头部分结构体File_Index_TypeDef的内容包括:选择贴装元件的数量、对应料槽的总数、地址信息等等,其函数简单列举如下:
料槽数据结构体的内容包括:料架编号、料架的型号、料槽旋转角度、器件步距、器件厚度等料槽参数。每一中种料槽对应着一个Feed_Stack_TypeDef数据结构体,并且按照编号从小到大进行排列,因此在CGF文件中料槽配置数据信息部分存放的是Feed_Stack_TypeDef的链表内容,其函数简单列举如下:
在CGF文件中选择贴装元件信息部分中,存放着该次要进行贴装的元件信息,这些元件的信息是以结构体SMT_Code_TypeDef对象的结构体链表形式存放的。每个贴装元件的信息都对应着一个SMT_Code _TypeDef对象,SMT_Code_TypeDef对象的主要内容包括:器件的编号、器件标志、器件对应的料槽编号(料位)、器件目标贴装点的三维坐标值以及器件贴装时应旋转的角度,其函数简单列举如下:
通过添加“打开文件”按钮消息,该按钮的ID为IDC_OPENFILE,在VC环境下生命函数OnBn-ClickedOpen(),通过消息宏ON_BN_CLICKED()将OnBnClickedOpen()和控件 IDC_OPENFILE相关联,在函数OnBnClickedOpen()中进行对CGF格式文件的读取操作,将文件中贴片元件的信息保存在数据结构体Feed_Stack_TypeDef的链表中。
2.2 CGF格式文件的读取
在打开CGF文件后,定义一个File_Index_TypeDef对象File_Index,首先从文件的头部读取sizeof (File_Index_TypeDef)大小的内容保存在 File_ Index中。
从File_Index中获取当前CGF文件中的器件总数File_Index.Chip_Sum、料槽总数File_Index.Feed_ Sum等信息。之后逐个读取元件信息保存在以m_ StacK_Header为链表头的Feed_Stack_TypeDef数据结构体链表中,直到读取File_Index.Feed_Sum个料槽信息为止。同样的方法读取 File_Index.Chip_ Sum个贴装元件信息保存在SMT_Code_TypeDef数据结构体链表当中。至此我们就将CGF格式文件中的数都读取出来了。
2.3 贴片机仿真运动的实现
贴片机仿真运动就是将贴片机从吸嘴在料槽上吸去贴装元件到将本次要贴装元件全部贴装完毕为止的过程通过计算机虚拟的平台显示在我们的视区内[4]。
贴片机的仿真运动包括多个阶段。先是贴片机的贴片头运动至料槽处,通过贴片头和吸嘴的运动将贴装元件逐个吸取附在贴片头的吸嘴上。
其次是贴片头根据贴装元件的目标坐标进行运动贴装的过程。在贴片机的模型中,贴片机的模型数据是以CChipStrcut结构体的形式保存的,在这个结构体当中包含着贴片机各个部分的模型的数据。贴片机的运动是通过在定时器中修改贴片机中运动部分模型的数据坐标然后进行视图重绘来实现的。
在定时器中,首先要判断当前贴片头的运动方式,当前是贴片头在运动还是吸嘴在上下运动吸取或者贴装元件。
在贴片机的仿真过程中,贴片机的运动部分主要集中在贴片头部分,为了使贴片机仿真过程的运动更加贴近实际,在贴片头的运动时,根据设定的速度和加速度值,将贴片头从起始位置运动到目标位置的过程进行匀加速、匀速、匀减速3个阶段的划分[5]。
首先计算出贴片头当前位置坐标和目标位置坐标的距离,贴片机在运动过程中,首先进行判断当前贴片头中是否有吸附的元件,如果没有贴片头要移动到料盘附近,然后吸嘴逐个的去吸起相应的元件,并且更新贴片头中元件的信息。然后贴片头根据元件中的元件的贴装坐标信息移动到目标点,此后更改贴片头运动状态,贴片头保持位置不变,吸嘴开始向下运动将元件放置在PCB板上目标位置[6]。
2.4 元件的贴装模拟
在贴装的过程中,每次贴片头吸嘴吸附的元件运动到目标坐标即完成该元件的贴装后,就将该元件对应的Pick_Stack_TypeDef结构体对象中的State元素状态由FALSE改变成TRUE。在绘制贴片机的模型的线程中,扫描Pick_Stack_TypeDef结构体链表,在其中State状态为TRUE的元件的贴装目标坐标绘制圆点用来模拟电路板的贴装效果。
电路板贴装效果的观测是通过ID为IDC_SHOW的按钮实现,声明函数OnBnClickedShow(),通过消息宏ON_BN_CLICKED()将OnBnClickedShow()和控件IDC_SHOW相关联。触发OnBnClickedShow()消息后,在定时器中修改绘制电路板时关联。在OnBn-ClickedShow()函数中开启定时器,在定时器中逐渐改变glRotatef(m_PCBAngle,1.0,0.0,0.0)中的参数m_PCBAngle的值,从而实现贴装电路板的90°翻转,让操作者可以正视电路板的贴装效果。
2.5 仿真系统的测试与优化
在初始程序编制完成后,通过读取贴片机的PCB_CAM/CNC数据提取系统生成的数据文件,来对贴片机的可视化运动仿真进行测试。在测试过程中贴装元件信息显示区域的元件信息变化显示十分顺畅、正确无误,贴片机的模型运动状态也不存在闪烁现象。但是贴片机的贴片头运动在某些时刻会发生跳动,经过分析后发现是对贴片机进行速度控制的过程中运算判断不全面[7]。在更改后贴片机可视化运动仿真系统运行稳定、可靠性较高,界面可操作性比较好[8]。最终的贴片机可视化运动仿真系统实现了如图5所示的效果。
图5 贴片机可视化运动仿真系统实现效果
图5中,通过左侧窗口的贴装位置X、贴装位置Y、贴装位置Z、旋转角度以及最上面的运动速度这几个文本框的数据变化来观察记录贴片机的运行实现情况。
本文在对目前国内外主流贴片机的结构及工作原理研究分析之后,得出研究贴片机虚拟仿真加工系统的必要性。本设计主要是实现贴片机三维模型的建立以及贴片机运动的控制,并且能够对贴片机仿真的结构进行观察。并且为系统设计了友好的用户画面。此系统功能完善、运行稳定、布局合理,可以以非常高的效率完成贴片机的仿真加工工作。
[1] 贾春燕.贴片机研究与结构设计[D].哈尔滨:哈尔滨工程大学,2008.
[2] 肖永山.片式电子元件贴装设备综述[J].电子工业专用设备,2006(5):138-140.
[3] 杨青生.基于OpenGL的三维可视化研究[D].西安:陕西师范大学,2002.
[4] 李鹏程.表面贴装系统的优化软件设计和实现[D].西南交通大学,2012.
[5] 钱佳敏,于兰峰,曹晔.动臂式贴片机贴装轨迹的可视化仿真[J].机械设计与制造,2012,(3):121-123.
[6] 王君.贴片机贴装过程的优化研究[D].华南理工大学,2011.
[7] 刘慧杰,靳海亮.基于VC++的OpenGL三维图形开发设计[J].计算机与数字工程,2009(7):122-124+174.
[8] Song Zhiming,Kang Fengju.Seabed Scene Simulation and Its Realization in Extending Vega[J].Journal of Marine Science and Application,2003:262-264.
程汉涛(1987- ),男,汉族,硕士,研究方向为嵌入式产品设计与开发,624767843@qq.com;
王学俊(1963- ),男,教授,研究生导师,从事机电产品开发方向研究;
孔新伟(1987- ),男,硕士研究生,从事嵌入式产片开发方向研究。
Research and Implementation of a Visual Simulation System on Chip Mounter
CHENG Hantao,WANG Xuejun*,KONG Xinwei,ZHOU Chenchen
(Dalian Polytechnic University,School of Mechanical Engineering and Automation,Dalian Liaoning 116034,China)
Placement machine in the process of manufacture,tests need to be pasted on the job,this job not only need to consume substrate,components and time-consuming,laborious for SMT machine debugging work is also very trouble.In order to solve the technical problems and learn more about this,from the perspective of visual dynamic simulation a new train of thought is provided,through the establishment of three-dimensional model SMT machine,SMT machine visualization simulation,the simulation system testing and optimization aspects of placement machine is analyzed in the design and implementation of the placement machine visual motion simulation,make the placement machine workflow clear image display.
surface mounted technology;simulation;OpenGL
10.3969/j.issn.1005-9490.2014.02.022
TN605;TN305
A
1005-9490(2014)02-0270-05
2013-06-05修改日期:2013-07-01
EEACC:0170E