APP下载

基于多喷头并联的3D打印机控制系统的研究

2022-03-10潘盛湖刘云强张小军冯一夫

工程设计学报 2022年1期
关键词:轮廓线并联打印机

潘盛湖,刘云强,胡 涵,张小军,冯一夫

(西南石油大学机电工程学院,四川 成都 610500)

3D打印机是利用“堆砌”方法实现一次成型制造的高自动化加工设备,是实现智能制造、“无人工厂”最关键的制造设备之一。美国、德国等国由于研究起步较早,在3 D打印技术及其在装备制造领域的应用方面已经遥遥领先[1-3]。近年来,国内在该领域也开展了大量研究,取得了丰硕成果,其中在3D打印控制系统方面的成果尤为突出。例如:徐军等采用8位控制器进行数据处理并驱动步进伺服机构实现3D打印控制[4];黄建锋等搭建了ARM(advanced RISC(reduced instruction set computer)machine,先进精简指令集计算机处理器)+CPLD(complex programable logic device,复杂可编程逻辑器件)多任务控制平台,实现了3D打印机X、Y、Z轴步进伺服的精确控制[5];毕俊喜等采用“PCI(peripheral component interconnect,外部部件互联标准)总线+运动控制卡”的方式实现了3D打印机X、Y、Z三轴协同运动及送料装置辅助运动的精准控制[6];李世鹏等选用内置Flash的精简指令集高速8位微控制器,设计了基于定点方式更换喷嘴的FDM(fused deposition modeling,熔融沉积制造)彩色3D打印机控制系统[7]。

上述研究都实现了对3D打印机控制系统的快速搭建,并精确控制伺服机构完成2.5轴加工。然而这些方法尚存在缺陷:首先,打印的零部件以非规则外形为主,切片软件生成的单层打印轨迹主要为由大量微线段(由G-code程序表示)组成的曲线,采用单微控制器控制系统无法实现其快速加工;其次,采用单喷头方式加工时,由于单层打印面由多条均匀分布的轮廓线组成,单喷头每次只能打印1条轮廓线,以致在零部件尺寸稍大时打印效率低下。

本文以光固化型3D打印机为控制对象,设计了一种结构简单、易于实现的3D打印机控制系统,以实现曲线的高速打印,及控制多喷头机构实现零部件单层轮廓的并联打印,提高3D打印机的加工效率。

1 多喷头并联打印系统方案设计

多喷头并联打印实现的主要功能为:1)设计了七喷头并联打印头和七喷头色彩打印头,可实现一次最多打印7条均匀分布的轮廓线,色彩打印头用于轮廓线不同色彩的打印;2)每个喷头喷出的固化树脂沿打印路径均匀分布,即同一路径前后喷出的2个液滴间距恒定;3)七喷头并联打印头能根据轮廓线进行旋转调整;4)能进行曲线数据的前瞻处理,实现曲线轮廓的高速、高精度加工。

1.1 多喷头并联打印头的设计

多喷头并联打印如图1所示。7个打印喷嘴可以实现一次性多轨迹并联打印。7个喷嘴的树脂挤出均由压电陶瓷挤出片控制,既可以实现7个喷嘴同时挤出树脂进行大面积打印,又可以控制单喷头挤出树脂进行某些细节的打印。七喷头色彩打印头与七喷头并联打印头平行分布在普通打印喷头的另一侧,在进行彩色外廓打印时使用。光固化树脂储存在喷嘴上方的树脂囊腔内,压电材料受脉冲信号控制产生变形,将树脂挤出。信号响应速度快,则挤出的树脂较均匀。整个打印头的转动由布置在其上方的打印头旋转机构控制,整排喷头可以进行角度调整。

图1 多喷头并联打印示意Fig.1 Schematic of multi-nozzle parallel printing

1.2 多喷头并联打印控制系统的结构

多喷头并联打印控制系统的结构如图2所示。

图2 多喷头并联打印控制系统的结构Fig.2 Structure of multi-nozzle parallel printing control system

3D切片软件生成的两轴插补程序G-code通过SD(secure digital,安全数字)存储卡或网络输入STM32F407ZGT(1)主控制器中,并进行二次预处理,转换成四轴插补数据[8-11]。STM32F407ZGT(2)将四轴插补数据进行微线段前瞻计算,生成曲线插补控制量向运动控制器输出。四轴插补计算量较大,同时打印系统要求的响应速度快,因此采用双STM32F407ZGT主控单元将人机数据交互、加工数据二次预处理与插补计算和数据输出分离,以提高打印效率。

运动控制模块须同时控制X轴控制电机、Y轴控制电机、Z轴控制电机、打印头旋转控制电机R、荧光控制电机H和打印头脉冲N,因此至少需要5个轴输出端口和1个脉冲输出端口。选用成本较低的PCL6045BL运动控制器,每个控制器可控制4个轴的运动,采用双PCL6045BL运动控制单元即可满足系统控制需求。2个PCL6045B L控制器通过FSMC(flexible static memory controller,可变静态存储控制器)总线连接方式与STM32F407ZGT芯片连接,实时接收曲线插补控制量,实现对工作台伺服电机的控制。

CPLD通过FSMC总线与STM32F407ZGT芯片连接,实时接收轮廓线信息;同时CPLD通过IO(input/output,输入/输出)口接收PCL6045BL的打印头脉冲信息,单路脉冲经CPLD转换为多路并行输出脉冲,从而实现对并联打印头同时出料或个别出料的控制功能。

2 多喷头并联打印控制系统的硬件设计

2.1 双STM32F407ZGT主控单元

3D打印数据处理量较大,且在大多数情况下为非规则曲线生成的微线段数据,CPU(central processing unit,中央处理单元)控制器采用带DSP(digital signal processing,数字信号处理)功能的STM32F407ZGT嵌入式ARM芯片[12-13],并且采用双CPU模式。双STM32F407ZGT主控单元如图3所示。其中,STM32F407ZGT(1)负责人机数据交互和加工数据二次预处理,STM32F407ZGT(2)负责曲线微线段前瞻处理和插补数据的输出控制。2个STM32F407ZGT之间采用SPI(serial peripheral interface,串行外设接口)进行数据交换,

图3 双STM32F407ZGT主控单元Fig.3 Dual STM32F407ZGT master control unit

主控单元中,STM32F407ZGT采用3.3 V电源供电;SPI采用四线制连接;通过串口连接将触摸屏的数据与STM32F407ZGT(1)进行交换;网口采用DP83848IVV网络芯片进行信号转换,并与STM32F407ZGT(1)进行连接。

2.2 PCL6045B运动控制单元

运动控制单元须控制X轴、Y轴、Z轴控制电机,打印头旋转控制电机R,荧光控制电机H和打印头脉冲N,共5个运动轴和1个脉冲输出。其中X轴、Y轴控制电机,打印头旋转控制电机R、打印头脉冲N须协同控制,故其须具备四轴插补功能。选用2片高性价比的PCL6045BL运动控制芯片作为主芯片,每片可以控制4个轴的插补,可满足运动控制需求。

PCL6045B的连接如图4(a)所示。其中每片PCL6045BL芯片以外存储器方式与STM32F407 ZGT连接。以其中1片为例,将STM32F407ZGT的FSMC_NE1与PCL6045BL片选引脚CS相连,可连接多个运动控制芯片,扩展运动控制轴数;PCL6045 BL的地址线A[1∶4]、读控制线RD、写控制线WR、数据线D[0∶15]分别与STM32F407ZGT(1)的 FSMC引脚 FSMC_A[1∶4]、FSMC_NOE、FSMC_NWE、FSMC_D[0∶15]连接,PCL6045BL的地址线A[0]接地,IF1∶IF0=1∶0(高低电平之比,高电平为1,低电平为0)。由此,构成16位8086接口模式进行控制。

PCL6045BL的光耦转换电路如图4(b)所示。PCL6045BL芯片的输出信号由高速光耦器6N137进行转换,转换后实现对伺服电机的控制。

图4 PCL6045B运动控制单元Fig.4 PCL6045B motion control unit

2.3 CPLD并联打印头控制单元

为实现对并联打印头和色彩打印头的控制,须将PCL6045BL芯片输出的单路打印头脉冲转换成并联多路脉冲输出。打印头输出的脉冲信号直接输入CPLD,通过CPLD进行转换和并联控制。须预先进行CPLD输出逻辑编程。CPLD并联打印头控制单元如图5所示。主芯片选用EPM240,以外存储器方式与STM32F407ZGT(1)连接,连接8根地址线、8根数据线和 3根控制线[14-15];通过 1个 IO 引脚与PCL6045BL芯片脉冲N的引脚连接,获得打印脉冲;并联打印脉冲由6N137进行转换,然后输出以控制打印喷头。

图5 并联打印头控制单元Fig.5 Parallel print head control unit

3 二轴-四轴插补数据转换算法

二轴-四轴插补数据转换如图6所示。其中:Pi-1(xi-1,yi-1)、Pi(xi,yi)、Pi+1(xi+1,yi+1)为G-code程序定义的一层打印数据中一条轮廓线上的3个连续坐标点;Pi-1Pi为上一加工段,PiPi+1为当前加工段,上一加工段的打印头移动方向与OM垂直,当前加工段的打印头移动方向与ON垂直;a1为Pi-1Pi与Pi-Pi+1的夹角,c为OM与ON的夹角;d为喷头的打印间距。

图6 二轴-四轴插补数据转换示意Fig.6 Schematic of two axis-four axis interpolation data conversion

由几何关系可知c=a1,即从上一加工段转入当前段时并联打印头须旋转c;此外,采用等分当前加工段长度Li的方式求取当前加工段喷头喷液的滴数P。

上一加工段长度Li-1和当前加工线段长度Li计算如下:

可得当前加工段喷头喷液的滴数P为:

切片软件生成的G-code程序中X、Y两轴插补数据一般是微线段的,会出现Li<d的情况。当Li<d时,应保证该线段至少喷1滴喷液,则式(2)修正为:

式中:I为当前加工段向量与上一加工段向量的内积。

结合X、Y轴移动量,液滴数P和转角c,重新组合生成四轴插补数据用于3D打印加工,实现并联打印[16-17]。

4 多喷头并联打印控制系统的软件设计

控制系统的软件主要包括STM32F407ZGT(1)并联打印数据预处理程序、STM32F407ZGT(2)并联打印控制程序、CPLD并联打印脉冲输出控制程序。STM32F407ZGT程序基于Keil C平台编写[18],CPLD程序采用QuarterⅡ软件编写。

4.1 并联打印数据预处理程序

并联打印数据预处理程序的设计流程为:

1)数据提取函数DATA_GET()从SD卡中实时提取G-code数据并分离保存;

2)二轴转四轴数据预处理函数FOUR_AXISDATA(void)对分离后的数据进行预转换;

3)数据发送函数DATA_SEND1(void)将预处理后的数据通过SPI总线发送给STM32F407ZGT(2)进行3D打印控制。

二轴-四轴插补数据转换程序为:

4.2 并联打印控制程序

设计并联打印控制程序,实现从STM32F407ZGT(1)接收模块接收并联打印数据及控制PCL6045BL进行运动脉冲输出。

程序的设计流程为:

1)GET_FOURAXISDATA()从 STM32F407 ZGT(1)中接收数据;

2)EXPO_INT_CRTL()函数控制四轴插补与并联打印,消除单次数据波动对数据结果的影响。

四轴插补控制的主要程序为:

3)SEND_CURNUM()函数将当前均匀轮廓轨迹数量发给CPLD控制器,实现对并联脉冲输出的控制。

4.3 并联打印脉冲输出控制程序

并联打印脉冲输出控制程序的设计流程为:

1)控制CPLD从STM32F407ZGT(2)实时接收当前均匀分布的轨迹数量;

2)控制并联打印脉冲输出端口数量,实现并联打印头脉冲控制。

其主要程序为:

5 多喷头并联打印控制系统的测试

为验证控制系统的性能,进行9条轮廓线多喷头并联打印实验,并与8位单片机控制系统控制下的单喷头的打印速度、打印精度、打印质量等进行对比。多喷头并联打印实验如图7所示,实验结果对比如表1所示。

图7 多喷头并联打印实验Fig.7 Multi-nozzle parallel printing experiment

表1 打印实验结果对比Table 1 Print experimental results comparison

对比实验结果可知,多喷头并联打印的打印速度比传统单喷头打印提高4倍左右,打印的轮廓误差减少80%以上,可见打印精度提高,打印质量较好。

6 结论

1)设计了一种多喷头并联的打印头。该打印头在XY平面内平移运动的同时实现了灵活的协同旋转运动,可完成在同一切片层内多条轨迹的同时打印,且出料均匀;通过控制各喷头的单独输出,可实现多种材料的混合打印。

2)基于切向跟踪原理推导的二轴-四轴插补数据转换算法实现了并联打印中插补运动的准确控制。双CPU的控制结构可以对复杂曲线进行实时的前瞻计算、二次预处理和插补计算。另外,采用输入输出数据分离的数据处理方式可以实现加工数据的高速处理。

3)实验结果显示,多喷头并联打印的打印速度较传统的单喷头打印明显提高,打印精度也得到提高。研究结果为3D打印加工中大体积打印件的快速成型和零件的大批量快速生产提供了一种切实可行的解决方案,具有一定的实用价值。

猜你喜欢

轮廓线并联打印机
立体图像任意剖面轮廓线提取方法仿真研究
识别串、并联电路的方法
新奇有趣的打印机
并联型开关稳压电源的常见故障与维修
柴油发电机并联控制器的思考
一种有效的秦俑碎块匹配算法①
另类3D打印机
FDM型混色3D打印机的设计
分布式并联逆变器解耦电流下垂控制技术