趙祥丹,葛紅宇,李漫漫,顧佳鈺,羅茂炫,陳創(chuàng),安仲帥
(南京工程學(xué)院自動化學(xué)院,江蘇 南京 211167)
三維打印由CAD直接驅(qū)動,無需CAPP、數(shù)控編程等中間過程,能極大縮短零件及產(chǎn)品的研制周期[1-3];同時,其通過二維層面的加工實現(xiàn)三維結(jié)構(gòu),極大降低復(fù)雜三維結(jié)構(gòu)的加工難度,是當(dāng)前加工領(lǐng)域的一個重要研究方向。加工控制是3D打印加工的使能與驅(qū)動技術(shù),加工精度、集成度、可靠性是該領(lǐng)域研究的主要內(nèi)容[4-5]。本文采用工業(yè)PC結(jié)合高性能嵌入式控制器與自主專用集成電路的控制結(jié)構(gòu),研究低成本、高集成度、高可靠、高速高效,具備在線實時三維加工顯示,具備真正意義上的“所見即所得”功能的FDM嵌入式工業(yè)控制系統(tǒng)[6-8]。
根據(jù)FDM成型加工的工藝過程,本文實現(xiàn)的熔融沉積成型系統(tǒng)控制結(jié)構(gòu)如圖1所示。

圖1 FDM打印控制的系統(tǒng)結(jié)構(gòu)Fig .1 System structure of FDM controller
系統(tǒng)采用PC結(jié)合高性能嵌入式控制器及自制專用集成電路的控制結(jié)構(gòu),上位控制包括PC機(jī)、操作系統(tǒng)及相關(guān)驅(qū)動電路與程序,實現(xiàn)3維CAD模型的切片處理、數(shù)據(jù)處理、加工指令下傳、打印加工的實時顯示等功能;下位的加工控制主要由嵌入式控制系統(tǒng)與打印控制專用IC及支撐電路構(gòu)成。其中,嵌入式控制系統(tǒng)實現(xiàn)打印掃描運動、絲溫控制、噴絲動作、高速串口通信以及指令收發(fā)、加工狀態(tài)獲取與發(fā)送等功能[9];專用IC及支持電路接收嵌入式控制系統(tǒng)指令,驅(qū)動打印掃描電機(jī)、絲溫采集、加熱等電路,實現(xiàn)打印加工操作。同時送出絲溫、行程、極限開關(guān)等狀態(tài),供嵌入式控制系統(tǒng)或上位的工業(yè)PC處理。

表2 打印指令數(shù)據(jù)的定義格式Table 2 Data format of machining instruction

表3 打印狀態(tài)數(shù)據(jù)的定義格式Table 3 Data format of machining status

表4 典型加減速過程運動參數(shù)Table 4 Motion parameters of typical acceleration and deceleration process
鑒于通信數(shù)據(jù)量、速度以及實時性、可靠性要求,本文使用通用異步串行通信的全雙工多緩沖DMA方式,通信波特率選擇2250 kbps以上,設(shè)計專門的CRC循環(huán)冗余校驗程序?qū)崿F(xiàn)數(shù)據(jù)校驗。
高速串口通信的數(shù)據(jù)幀格式如表1所示,包括1字節(jié)的幀頭66 H、幀尾99 H、幀長、幀類型碼,0或2字節(jié)循環(huán)冗余碼與0-66字節(jié)的有效數(shù)據(jù),最大幀長72字節(jié),最小幀長5字節(jié)。

表1 高速串口通信數(shù)據(jù)幀格式Table 1 Data format for high speed serial communication
根據(jù)內(nèi)容,數(shù)據(jù)幀分為指令幀與狀態(tài)幀兩類。指令幀傳輸數(shù)據(jù)處理得到的打印指令,幀類型碼00 H,使用2字節(jié)CRC校驗字。根據(jù)類型不同,單條指令占用數(shù)據(jù)3-5字節(jié),其格式定義如表2所示。執(zhí)行XY快移或進(jìn)給指令時,XY軸聯(lián)動。
狀態(tài)數(shù)據(jù)幀的幀類型碼01 H,占用數(shù)據(jù)1-7字節(jié),格式定義表3所示。傳送坐標(biāo)、噴絲溫度與行程開關(guān)等數(shù)據(jù)時,狀態(tài)幀使用2字節(jié)CRC校驗字;傳送通信出錯信息時,不使用校驗字,此時數(shù)據(jù)幀最短,僅包括幀頭、幀尾、幀長、幀類型與狀態(tài)數(shù)據(jù)40 H,幀長5字節(jié)。
CRC校驗[10]使用生成多項式X16+X15+X2+1,設(shè)置奇/偶校驗實現(xiàn)單字節(jié)的數(shù)據(jù)初始校驗[11]。
高速串口通信實現(xiàn)兩類數(shù)據(jù)-打印加工指令數(shù)據(jù)與打印加工狀態(tài)數(shù)據(jù)的高速實時傳輸,分別實現(xiàn)打印指令及狀態(tài)的傳送。
打印指令傳送由上位數(shù)據(jù)處理端的工業(yè)PC發(fā)起,PC發(fā)送,打印控制嵌入式控制器接收;PC端獲取切片處理數(shù)據(jù),截取加工指令,計算CRC校驗碼,根據(jù)指令幀格式生成并發(fā)送指令幀至下位的FDM打印控制端,同時等待打印控制端的響應(yīng);打印控制端收到指令,執(zhí)行數(shù)據(jù)校驗;校驗無誤,執(zhí)行指令;校驗出錯,向PC發(fā)出通信出錯幀,請求重發(fā);PC端收到請求,將指令幀重送發(fā)送緩沖區(qū),重發(fā)數(shù)據(jù),直至通信完成。
狀態(tài)傳送由打印控制端發(fā)起,打印控制端發(fā)送,PC接收,傳輸過程與指令傳輸類似。狀態(tài)傳送啟動,打印控制嵌入式處理器獲取狀態(tài)數(shù)據(jù),計算CRC校驗碼,生成并發(fā)送狀態(tài)幀,等待PC響應(yīng);PC獲取并校驗狀態(tài)數(shù)據(jù),數(shù)據(jù)無誤,更新系統(tǒng)狀態(tài)顯示;校驗出錯,向打印控制端發(fā)出通信出錯幀,請求狀態(tài)重發(fā);打印控制器收到出錯信息,重發(fā)狀態(tài)數(shù)據(jù)直至狀態(tài)傳送無誤,狀態(tài)傳送結(jié)束。
XY向打印掃描運動由步進(jìn)電機(jī)實現(xiàn),專用集成電路內(nèi)置SPI及電機(jī)驅(qū)動控制邏輯,寫入微秒為單位的脈寬計數(shù)值與脈沖個數(shù),電機(jī)即按設(shè)定值運動[12-15]。電機(jī)速度控制通過S曲線加減速實現(xiàn)。假定加加速度恒定值J、初速度V0、時間t,則當(dāng)前速度Vt為:

受CPU運算能力的限制,應(yīng)用時對式(1)簡化并離散化。假定時刻n,加速度a(n}、時間t(n)、時間間隔Δt(n)、速度V{n}、位移S(n),Δt足夠小,通過遞推公式得到各運動參數(shù)為:

式中V(n)、V(n-1)、J已知,方便實現(xiàn),運動使用不連續(xù)的分級速度,相鄰速度變化量ΔV恒定,即V(n)與V(n-1)差值不變,表4為本文系統(tǒng)的一個典型加減速運動段。其中速度范圍為2~26 mm/s,相鄰等級速度差值ΔV為2 mm/s,速度初終值為4.24 mm/s,加加速J取值10 mm/s3,脈沖當(dāng)量0.01 mm。
圖2為各運動參數(shù)的變化曲線,速度V、加速度a以及位移S符合S曲線加減速變化規(guī)律。

圖2 典型加減速過程運動參數(shù)變化Fig.2 Motion parameters of typical acceleration and deceleration process
絲溫通過PWM脈沖啟停加熱實現(xiàn),系統(tǒng)根據(jù)絲溫動態(tài)調(diào)整PWM波的占空比,控制噴絲加熱時間占比,實現(xiàn)溫度的精確控制。不同占空比PWM波作用下絲溫變化曲線如圖3所示。根據(jù)噴絲溫度變化曲線,假定PWM占空比KPWM,噴絲溫度變化ΔT可以描述為:


圖3 不同占空比PWM波作用下噴絲溫升的變化曲線Fig.3 Jet temperature under the control of PWM of different duty cycle waves
求取拉普拉斯變換即得到噴絲溫度變化的Matlab模型,在此基礎(chǔ)上設(shè)計噴絲溫度控制的PID控制器如圖4所示。圖中延遲時間td為9 s,系數(shù)KT同公式3,系數(shù)KM=0.08KT2+KT,占空比KPWM取值范圍0%~90%。

圖4 噴絲溫度的PID控制器結(jié)構(gòu)Fig.4 Structure of PID controller for jet temperature
仿真結(jié)果表明,比例系數(shù)KP、積分系數(shù)KI分別取值2.5、0.0004時,溫度輸出的超調(diào)量約為3 %,調(diào)節(jié)時間在300 s左右,穩(wěn)態(tài)誤差小于0.5℃,能夠滿足FDM打印控制的基本要求,取得較好的控制效果,此時輸出溫度波形仿真結(jié)果如圖5所示,圖中設(shè)定溫度200℃,采樣時間1 s。

圖5 輸出噴絲溫度波形仿真Fig.5 Simulation of jet temperature control
FDM嵌入式打印控制系統(tǒng)的軟件框架結(jié)構(gòu)如圖6所示。系統(tǒng)調(diào)度和管理程序、顯示與觸摸控制程序、文件系統(tǒng)及SD驅(qū)動程序提供嵌入式處理器片上基礎(chǔ)硬件的基本操作;高速數(shù)據(jù)通信及校驗程序接收來自PC端的指令數(shù)據(jù),反饋系統(tǒng)運行狀況;噴絲控制、絲溫檢測及控制程序?qū)崿F(xiàn)打印過程中的絲溫控制及噴絲動作;打印運動控制實現(xiàn)兩維掃描運動及打印高度的運動控制;同時系統(tǒng)提供文件存儲控制功能,實現(xiàn)SD卡上加工文件的操作;除此之外,系統(tǒng)還提供快速定位、開關(guān)量檢測及控制、顯示與觸摸控制等輔助功能。

圖6 打印控制系統(tǒng)框架結(jié)構(gòu)Fig.6 Control structure of printing system develoed
FDM三維打印的調(diào)度與管理程序如圖7所示。管理調(diào)度程序分為狀態(tài)轉(zhuǎn)換與狀態(tài)處理兩個階段。系統(tǒng)啟動,首先進(jìn)入狀態(tài)轉(zhuǎn)換階段,系統(tǒng)根據(jù)指令類型設(shè)置系統(tǒng)狀態(tài)與相關(guān)標(biāo)志;而后,系統(tǒng)進(jìn)入狀態(tài)處理,根據(jù)系統(tǒng)狀態(tài),執(zhí)行相應(yīng)的操作。

Fig.7 Flow chart of the system management program
狀態(tài)轉(zhuǎn)換階段,系統(tǒng)執(zhí)行初始化,設(shè)置CPU、定時器、IO等硬件,初始化變量;而后,進(jìn)入指令/狀態(tài)處理循環(huán),檢索指令、狀態(tài)與開關(guān)信息,根據(jù)指令、狀態(tài)標(biāo)志,修改系統(tǒng)狀態(tài),執(zhí)行相應(yīng)處理。根據(jù)處理的操作,系統(tǒng)狀態(tài)分為空閑、加工兩種狀態(tài)。系統(tǒng)設(shè)置16位標(biāo)識寄存器,存儲溫控、XYZ運動忙、加工暫停、限位等標(biāo)志。
收到點動、快速定位指令,若無出錯及XYZ忙標(biāo)志,系統(tǒng)更新指令坐標(biāo),等待狀態(tài)處理實現(xiàn)相應(yīng)位置;收到絲溫指令,系統(tǒng)設(shè)置新絲溫,等待狀態(tài)處理實現(xiàn)絲溫;收到暫停指令,為加工態(tài)則置加工暫停標(biāo)志;收到加工指令,若處于空閑或暫停態(tài)且絲溫達(dá)到指令溫度,系統(tǒng)進(jìn)入加工態(tài);檢索到串口接收標(biāo)志,系統(tǒng)調(diào)用通信及校驗程序,獲取上位機(jī)送來的指令及通信狀態(tài)信息。
狀態(tài)處理階段,系統(tǒng)比較當(dāng)前與指令絲溫,相異,設(shè)置溫控標(biāo)志,調(diào)用絲溫控制程序?qū)崿F(xiàn)指定絲溫;相同,清除絲溫控制標(biāo)志;而后判斷運行狀態(tài),加工態(tài)且無狀態(tài)標(biāo)志置位,統(tǒng)調(diào)用打印加工程序,執(zhí)行打印加工;打印結(jié)束,系統(tǒng)設(shè)置空閑態(tài);加工態(tài)下有標(biāo)志位置位,系統(tǒng)向PC端發(fā)出錯信息,置出錯標(biāo)志,等待干預(yù);非加工態(tài),控制程序比較當(dāng)前與指令位置,二者一致,清除相應(yīng)運動忙標(biāo)志;不一致,調(diào)用XYZ運動控制程序?qū)崿F(xiàn)運動,置位相應(yīng)軸的忙標(biāo)志。
采用上述方法實現(xiàn)的FDM三維打印控制系統(tǒng)及加工測試如圖8所示。圖(a)為FDM 3維打印系統(tǒng)及打印測試,圖(b)為下位嵌入式打印控制系統(tǒng)。

Fig.8 Control system for FDM three-dimensional printing
XYZ打印加工運動及噴絲運動通過步距角1.8°的42 HD系列步進(jìn)電機(jī)實現(xiàn),采用模塊A4988驅(qū)動;冷端補(bǔ)償K型熱電偶MAX6675執(zhí)行絲溫采集,ALIENTEK 4.3寸TFT集成觸摸屏實現(xiàn)加工顯示與人機(jī)交互;FPGA芯片LFXP2-5實現(xiàn)打印控制專用集成電路,內(nèi)部集成步進(jìn)電機(jī)、MAX6657的驅(qū)動控制電路。嵌入式處理器選用32位ARM Cortex處理器STM32,通過通用SPI接口實現(xiàn)與打印控制專用集成電路、集成觸摸屏的數(shù)據(jù)交換。此外,打印控制專用集成電路內(nèi)部設(shè)計專用開關(guān)量輸入輸出控制電路,包括XYZ軸行程開關(guān)、打印狀態(tài)指示等開關(guān)量的編碼、緩沖與輸入輸出。
圖9為打印加工實驗的CAD模型及完成的實際零件,加工選取的掃描線寬0.31 mm,掃描層厚0.5 mm,所選材料為ABS工程塑料。

圖9 FDM三維打印加工實驗Fig.9 Machining experiments of FDM three-dimensional printing
本文提出并實現(xiàn)了一種工業(yè)PC結(jié)合高性能嵌入式處理器與專用集成電路的3D打印控制硬件結(jié)構(gòu),實現(xiàn)了FDM 3D打印加工嵌入式控制系統(tǒng),內(nèi)容包括打印控制系統(tǒng)結(jié)構(gòu)與功能框架、高速數(shù)據(jù)通信協(xié)議設(shè)計與實現(xiàn)方法,加工運動的加減速方法與實現(xiàn),噴絲溫度PID控制方法及實現(xiàn)。相較于現(xiàn)有系統(tǒng),本文系統(tǒng)具備以下特點:(1)采用PC結(jié)合嵌入式控制系統(tǒng)的結(jié)構(gòu),系統(tǒng)結(jié)構(gòu)簡單,可以兼顧復(fù)雜控制與數(shù)據(jù)處理。(2)加減速利用S加減速并進(jìn)行了簡化,平穩(wěn)性好、便于實現(xiàn),硬件要求低。(3)提出的高速通信協(xié)議速度高、可靠性好、數(shù)據(jù)量大,適于加工領(lǐng)域的多種場合。