本發(fā)明涉及3D打印技術(shù)領(lǐng)域,尤其涉及一種新型3D打印機(jī)智能控制系統(tǒng)。
背景技術(shù):
3D打印機(jī)遠(yuǎn)程控制領(lǐng)域,目前最主流的方式是通過一個(gè)智能盒子將3D打印機(jī)連接到網(wǎng)絡(luò)上,即通過usb線將一個(gè)智能盒子與3D打印機(jī)連接起來,并把智能盒子和手機(jī)通過無線網(wǎng)絡(luò)連接到云端服務(wù)器。用戶通過手機(jī)遠(yuǎn)程控制和在線選擇三維模型打印,所選中的三維模型通過云端服務(wù)器對3D模型進(jìn)行切片后再發(fā)送到用戶的智能盒子中,智能盒子在對3D打印機(jī)進(jìn)行控制打印。但是,云端服務(wù)器對3D模型進(jìn)行切片,如果同時(shí)切片的任務(wù)過多時(shí),會導(dǎo)致切片的平均速度大大下降,甚至造成云端服務(wù)器崩潰等技術(shù)問題。另外,對于智能盒子切片,所有的打印機(jī)都必須依賴一個(gè)高性能的可切片的智能盒子,進(jìn)而增大了客戶的硬件購置成本。對于需要3D模型文件保密的情況,將文件發(fā)送到智能盒子進(jìn)行切片,增大了3D模型文件的泄露的可能性。中國發(fā)明專利(201510465891.2:一種3D切片裝置控制系統(tǒng))提供了一種3D切片裝置控制系統(tǒng),其特征在于,包括:服務(wù)器、3D切片裝置和3D打印機(jī),所述服務(wù)器和所述3D切片裝置無線通信連接,所述3D切片裝置和所述3D打印機(jī)通信連接;所述服務(wù)器,被配置為將文件傳輸命令、控制命令和打印命令通過無線通信網(wǎng)絡(luò)發(fā)送給所述3D切片裝置;所述3D切片專職,被配置為根據(jù)接收到的所述文件傳輸命令,接收與所述文件傳輸命令相對應(yīng)的配置文件和3D模型文件,并根據(jù)所述切片命令對所述3D模型文件進(jìn)行相對應(yīng)的切片處理為3D模型切片文件,再將所述3D模型切片文件、所述控制命令和所述切片命令發(fā)送給所述3D打印機(jī)進(jìn)行打印處理。上述發(fā)明專利公開的一種3D切片裝置控制系統(tǒng)通過3D切片裝置對從服務(wù)器中接收到的三維模型進(jìn)行切片,以此來減輕服務(wù)器的資源消耗,進(jìn)而來避免因切片請求過多導(dǎo)致的服務(wù)器崩潰問題。但是,服務(wù)器向客戶端傳輸?shù)奈募?,往往會存在大文件或需要保密的文件,對于此類文件上述發(fā)明專利不能進(jìn)行合理有效的切片,可能會導(dǎo)致云端服務(wù)器崩潰和保密文件泄露的現(xiàn)象。
技術(shù)實(shí)現(xiàn)要素:
針對現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明提供了一種新型3D打印機(jī)智能控制系統(tǒng),不僅減輕了服務(wù)器的資源消耗,還避免了因文件過大造成的服務(wù)器崩潰現(xiàn)象。為解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案是:本發(fā)明提供一種新型3D打印機(jī)智能控制系統(tǒng),包括3D打印機(jī)、終端SDK、移動(dòng)終端、云端服務(wù)器、3D文件分割單元和Gcode文件合并單元;所述移動(dòng)終端向所述云端服務(wù)器發(fā)送控制3D打印機(jī)指令;所述云端服務(wù)器將接收的控制3D打印機(jī)指令發(fā)送到終端SDK;所述云端服務(wù)器包括3D文件分割單元和Gcode文件合并單元。優(yōu)選地,所述終端SDK是將SDK安裝到智能盒子、Windows/Linux的PC機(jī)、ios/android移動(dòng)終端、智能3d打印機(jī)中的任何一種。利用所述新型3D打印機(jī)智能控制系統(tǒng)進(jìn)行3D文件分布式切片的方法,包括如下步驟:(1)移動(dòng)終端向云端服務(wù)器發(fā)送控制3D打印機(jī)的指令;(2)云端服務(wù)器接收移動(dòng)終端的各種控制指令,然后向終端SDK發(fā)送控制指令;①如果終端支持3D模型文件切片,云端服務(wù)器發(fā)送切片命令到終端SDK,終端SDK中的切片發(fā)送到Gcode文件合并單元,將切片結(jié)果進(jìn)行組合,輸出Gcode文件,終端SDK將輸出的Gcode文件向3D打印機(jī)發(fā)送打印指令,開始打印作業(yè);②如果終端不支持3D模型文件切片,云端支持切片,云端服務(wù)器中的云端切片發(fā)送到Gcode文件合并單元進(jìn)行Gcode文件分割壓縮文件;云端服務(wù)器將Gcode文件分割壓縮文件發(fā)送到終端SDK,終端SDK對Gcode文件解壓,終端SDK根據(jù)解壓后的Gcode文件向3D打印機(jī)發(fā)送打印指令,開始打印作業(yè);③如果終端和云端都不支持3D模型文件切片,云端服務(wù)器中的3D模型文件發(fā)送到3D文件分割單元,3D文件分割單元對3D模型文件進(jìn)行分割后發(fā)往不同的終端SDK切片,經(jīng)終端SDK切片后發(fā)送到終端SDK進(jìn)行子切片任務(wù),自切片任務(wù)中的文件通過多個(gè)SDK并行作業(yè)后將文件發(fā)回子Gcode文件,終端SDK將子Gcode文件發(fā)送到云端服務(wù)器對子Gcode文件合并,將合并后的子Gcode文件發(fā)送到Gcode文件分割壓縮單元進(jìn)行分割壓縮,云端服務(wù)器將分割壓縮后的Gcode文件發(fā)送到終端SDK對Gcode文件解壓,終端SDK根據(jù)解壓后的Gcode文件向3D打印機(jī)發(fā)送打印指令,開始打印作業(yè)。優(yōu)選地,所述Gcode文件合并單元對切片進(jìn)行合并的方法,包括如下步驟:(1)將各個(gè)子模型的Gcode文件頭尾清除,等待合并;(2)調(diào)整Z軸坐標(biāo)之后,將各個(gè)子模型的Gcode文件按順序依次疊加成一個(gè)Gcode文件;(3)統(tǒng)計(jì)新Gcode文件的總體數(shù)據(jù),并寫入Gcode文件文件的首位數(shù)據(jù)。優(yōu)選地,所述3D文件分割單元對Gcode文件進(jìn)行分割的方法,包括如下步驟:(1)根據(jù)Gcode文件尺寸,選擇要分割的份數(shù);(2)在Z軸方向上,對Gcode文件進(jìn)行等比分割;處于分界面的三角面,拆分成兩個(gè)三角面,讓兩部分各屬于上下兩層;(3)對于每一個(gè)拆分出來的文件,移動(dòng)Z坐標(biāo),讓其落于平臺上處于打印狀態(tài)。與現(xiàn)有技術(shù)相比,本發(fā)明產(chǎn)生的有益效果是:(1)本發(fā)明提供的新型3D打印機(jī)智能控制系統(tǒng)中的云端服務(wù)器可對客戶端的計(jì)算資源整合,進(jìn)行分布式切片,可以避免3D模型保密文件在傳輸過程中的泄露現(xiàn)象;(2)當(dāng)云端資源和客戶端資源都特別豐富,切片服務(wù)很容易被滿足時(shí),云端和客戶端的云端切片可以代替分布式切片;(3)本發(fā)明提供的新型3D打印機(jī)智能控制系統(tǒng)在資源有限的前提下,可以利用空閑資源,極大提高了使用3D打印機(jī)控制系統(tǒng)的用戶體驗(yàn);(4)對一個(gè)大的3D文件,進(jìn)行分割之后切片,將切片后的中間結(jié)果進(jìn)行合并,得到最終的Gcode文件,可以充分利用微小的閑散計(jì)算資源,可以避免當(dāng)切片任務(wù)過多時(shí),導(dǎo)致的切片平均速度下降及云端服務(wù)器崩潰等技術(shù)問題;(5)對于Gcode文件進(jìn)行分割、壓縮傳輸,可以在第一個(gè)壓縮包到達(dá)之后即可開始打印,最大限度地降低了Gcode文件的大小和網(wǎng)絡(luò)帶寬對打印進(jìn)度造成的影響。最終可以發(fā)展成對Gcode進(jìn)行流式傳輸。附圖說明圖1是本發(fā)明提供的一種新型3D打印機(jī)智能控制系統(tǒng)的流程圖。具體實(shí)施方式下面結(jié)合附圖,對本發(fā)明的具體實(shí)施例作詳細(xì)的闡述。參圖1所示,圖1是本發(fā)明提供的一種新型3D打印機(jī)智能控制系統(tǒng)的流程圖。一種新型3D打印機(jī)智能控制系統(tǒng),包括3D打印機(jī)、終端SDK、移動(dòng)終端、云端服務(wù)器、3D文件分割單元和Gcode文件合并單元;其中,所述移動(dòng)終端向所述云端服務(wù)器發(fā)送控制3D打印機(jī)指令;所述云端服務(wù)器將接收的控制3D打印機(jī)指令發(fā)送到終端SDK;所述云端服務(wù)器包括3D文件分割單元和Gcode文件合并單元;Gcode文件合并單元可將最終輸出的Gcode文件傳輸?shù)?D文件分割單元進(jìn)行分割壓縮;所述終端SDK是將SDK安裝到智能盒子、Windows/Linux的PC機(jī)、ios/android移動(dòng)終端、智能3d打印機(jī)中的任何一種。利用所述新型3D打印機(jī)智能控制系統(tǒng)進(jìn)行3D文件分布式切片的過程,包括如下步驟:(1)將SDK安裝到移動(dòng)終端,移動(dòng)終端向云端服務(wù)器發(fā)送控制3D打印機(jī)的指令;(2)云端服務(wù)器接收移動(dòng)終端的各種控制指令,然后向終端SDK發(fā)送控制指令;①如果終端支持3D模型文件切片,云端服務(wù)器發(fā)送切片命令到終端SDK,終端SDK中的切片發(fā)送到Gcode文件合并單元,將切片結(jié)果進(jìn)行組合,輸出Gcode文件,終端SDK將輸出的Gcode文件向3D打印機(jī)發(fā)送打印指令,開始打印作業(yè);②如果終端不支持3D模型文件切片,云端支持切片,云端服務(wù)器中的云端切片發(fā)送到Gcode文件合并單元進(jìn)行Gcode文件分割壓縮文件;云端服務(wù)器將Gcode文件分割壓縮文件發(fā)送到終端SDK,終端SDK對Gcode文件解壓,終端SDK根據(jù)解壓后的Gcode文件向3D打印機(jī)發(fā)送打印指令,開始打印作業(yè);③如果終端和云端都不支持3D模型文件切片,云端服務(wù)器中的3D模型文件發(fā)送到3D文件分割單元,3D文件分割單元對3D模型文件進(jìn)行分割后發(fā)往不同的終端SDK切片,經(jīng)終端SDK切片后發(fā)送到終端SDK進(jìn)行子切片任務(wù),自切片任務(wù)中的文件通過多個(gè)SDK并行作業(yè)后將文件發(fā)回子Gcode文件,終端SDK將子Gcode文件發(fā)送到云端服務(wù)器對子Gcode文件合并,將合并后的子Gcode文件發(fā)送到Gcode文件分割壓縮單元進(jìn)行分割壓縮,云端服務(wù)器將分割壓縮后的Gcode文件發(fā)送到終端SDK對Gcode文件解壓,終端SDK根據(jù)解壓后的Gcode文件向3D打印機(jī)發(fā)送打印指令,開始打印作業(yè),最大限度的降低了Gcode文件的大小和網(wǎng)絡(luò)帶寬對打印進(jìn)度造成的影響,進(jìn)而可以發(fā)展成對Gcode文件進(jìn)行流式傳輸。在文件傳輸過程中,對于同一大文件,云端服務(wù)器利用多個(gè)空閑狀態(tài)的可切片客戶端的進(jìn)行切片,發(fā)送到Gcode文件合并單元,并將最終的切片結(jié)果組合起來,輸出Gcode文件,可以充分利用微小的閑散計(jì)算資源;其中,所述Gcode文件合并單元對切片進(jìn)行合并的過程,包括如下步驟:(1)將各個(gè)子模型的Gcode文件頭尾清除,等待合并;(2)調(diào)整Z軸坐標(biāo)之后,將各個(gè)子模型的Gcode文件按順序依次疊加成一個(gè)Gcode文件;(3)統(tǒng)計(jì)新Gcode文件的總體數(shù)據(jù),并寫入Gcode文件文件的首位數(shù)據(jù)。其中,所述3D文件分割單元對Gcode文件進(jìn)行分割的過程,包括如下步驟:(1)根據(jù)Gcode文件尺寸,選擇要分割的份數(shù);(2)在Z軸方向上,對Gcode文件進(jìn)行等比分割;處于分界面的三角面,拆分成兩個(gè)三角面,讓兩部分各屬于上下兩層;(3)對于每一個(gè)拆分出來的文件,移動(dòng)Z坐標(biāo),讓其落于平臺上處于打印狀態(tài)。上文所述的一系列的詳細(xì)說明僅僅是針對本發(fā)明的可行性實(shí)施方式的具體說明,它們并不是用以限制本發(fā)明的保護(hù)范圍,在所述技術(shù)領(lǐng)域普通技術(shù)人員所具備的知識范圍內(nèi),在不脫離本發(fā)明宗旨的前提下作出的各種變化均屬于本發(fā)明的保護(hù)范圍。