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

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

表2 打印指令數據的定義格式Table 2 Data format of machining instruction

表3 打印狀態數據的定義格式Table 3 Data format of machining status

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

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

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

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

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


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

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

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

圖6 打印控制系統框架結構Fig.6 Control structure of printing system develoed
FDM三維打印的調度與管理程序如圖7所示。管理調度程序分為狀態轉換與狀態處理兩個階段。系統啟動,首先進入狀態轉換階段,系統根據指令類型設置系統狀態與相關標志;而后,系統進入狀態處理,根據系統狀態,執行相應的操作。

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

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

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