欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

3D打印機擠出頭正交分解運動控制方法及裝置與流程

文檔序號:12226276閱讀:525來源:國知局
3D打印機擠出頭正交分解運動控制方法及裝置與流程

本發(fā)明涉及3D打印技術(shù),尤其是一種3D打印機中擠出頭的運動控制方法及裝置。



背景技術(shù):

近幾年來,3D打印機技術(shù)的研究與應(yīng)用越來越受到學(xué)術(shù)界和商業(yè)界的重視,它被稱為第三次工業(yè)革命的重要標(biāo)志之一。3D打印是一種快速成型的制造技術(shù),不同于傳統(tǒng)的“減法”制造,它是利用特殊蠟材、粉末狀金屬或塑料等可粘合材料進行分層疊加的“加法”制造。它的工作機理是利用電腦端的切面軟件(如skeinforge)處理設(shè)計好的三維模型,生成G代碼傳送至3D打印機,3D打印機在接收到G代碼后產(chǎn)生相應(yīng)的控制指令,控制擠出頭做出正確的打印動作??傮w而言,3D打印機的運動實際上就是打印頭的運動,在打印3D模型時,打印機是一層一層的打印,而擠出頭在打印某一層時,是按照特定的運動軌跡(直線或曲線)逐點打印的。但在傳統(tǒng)的解決方案中,擠出頭的運動及速度控制是在固件程序中來完成的,這就使得驅(qū)動擠出頭運行的四個運動軸需要分時運行,這在物理特性上就存在一定的打印時間差,影響打印速度和精度。且傳統(tǒng)的解決方案通常使用基于Bresenham算法的擠出頭運動控制機制,如圖1所示,運用現(xiàn)有3D打印機擠出頭運動控制的解決方案,在實際的打印過程中,由于固件程序分時執(zhí)行的特性,X、Y軸需要按照Bresenham算法的控制策略先后運行,且E軸在進行給料過程中以點狀的形式給料,這使得擠出頭的實際運行軌跡呈鋸齒狀,造成打印工件表面不光滑,打印精度不夠高的問題。

傳統(tǒng)的3D打印機擠出頭運動控制是在固件程序中實現(xiàn)的,如圖2所示為傳統(tǒng)的擠出頭運動處理流程。由其他處理模塊得到了擠出頭運行過程中各個階段所需要運動參數(shù),包括加速階段的位移和速度、勻速階段的速度和位移、減速階段的速度和位移、加速度、以及初始速度和退出速度等。傳統(tǒng)解決方案中采用基于傳統(tǒng)圖形學(xué)當(dāng)中非常典型的畫直線算法Bresenham來執(zhí)行擠出頭的運動。由于固件是在單片機平臺上運行的,故擠出頭的運動走步是利用定時器中斷服務(wù)程序來實現(xiàn)的。中斷服務(wù)程序是依靠單片機中的定時器控制來實現(xiàn)擠出頭的走步,在進入中斷服務(wù)程序時,先由200判斷當(dāng)前所執(zhí)行的block塊是否為空(即當(dāng)前塊是否被執(zhí)行完成),若為空,則需要由201從Buffer塊緩存中取出下一個塊并重置定時器;在向驅(qū)動各軸的步進電機的引腳輸出方向信號后,便執(zhí)行核心處理部分,即Bresenham走步算法202,在這里存在一個循環(huán)過程,即需要三級判斷擠出頭的走步在哪個階段。若擠出頭所走的距離小于加速階段的距離,說明仍然在加速階段,若大于,則說明將進入第二個階段,且速度達到峰值;最后判斷擠出頭所走距離是否大于等于總距離,說條件滿足,說明此block塊已經(jīng)被執(zhí)行完成,若不滿足,則繼續(xù)循環(huán)走步。

傳統(tǒng)解決方案所采用的這種擠出頭運動控制機制在很大程度上影響了3D打印的速度和精度,固件程序需要分時運行的特性使得驅(qū)動擠出頭運行的四個運動軸在實際的打印過程中存在一定的時間差,影響了打印速度,而基于Bresenham算法的擠出頭運行機制使得擠出頭的實際運行軌跡呈鋸齒狀,影響了打印精度。



技術(shù)實現(xiàn)要素:

本發(fā)明提供一種3D打印機擠出頭正交分解運動控制方法及裝置,其能提高打印速度和打印精度。

為實現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下:

一種3D打印機擠出頭正交分解運動控制方法,包括如下步驟:

步驟一、獲得擠出頭合運動的梯形曲線;

步驟二、計算X、Y、Z、E軸與擠出頭總位移之間的比例系數(shù);

步驟三、根據(jù)上述兩步驟求出X、Y、Z、E軸的分解梯形速度曲線;

步驟四、輸出步驟三得出的速度參數(shù),對四個運動軸同時且獨立控制。

其中,步驟三中,X軸的分解梯形速度曲線中速度參數(shù)包括:

其中axis_steps_per_unit_x是X軸方向單位距離所需走的步數(shù),為X軸的比例系數(shù),Vs為擠出頭合運動速度,as為合加速度,accelerate_until_s為合加速階段的位移,decelerate_after_s為合運動開始減速的位移;Vx為X軸的分速度,ax為分加速度,accelerate_until_x為加速階段走步數(shù),decelerate_after_x為開始減速的走步數(shù);Y、Z、E軸的分解與X軸類似。

本發(fā)明還提供一種3D打印機擠出頭正交分解運動控制裝置,包括運動參數(shù)正交分解器、階段輸出控制狀態(tài)機、加速階段運動參數(shù)計算器、勻速階段運動參數(shù)計算器、減速階段運動參數(shù)計算器,得到各個軸正交分解的分解系數(shù),運動參數(shù)正交分解器用于將得到的輸入數(shù)據(jù)對X、Y、Z、E四個運動進行正交分解的初步運算,階段輸出控制狀態(tài)機用于控制輸出速度曲線哪一個階段的運動參數(shù),加速階段運動參數(shù)計算器、勻速階段運動參數(shù)計算器、減速階段運動參數(shù)計算器分別用于計算出四個軸速度曲線各階段的相關(guān)運動參數(shù)。

其中,四個軸速度曲線各階段的相關(guān)運動參數(shù)的計算方式為:

其中axis_steps_per_unit_x是X軸方向單位距離所需走的步數(shù),為X軸的比例系數(shù),Vs為擠出頭合運動速度,as為合加速度,accelerate_until_s為合加速階段的位移,decelerate_after_s為合運動開始減速的位移;Vx為X軸的分速度,ax為分加速度,accelerate_until_x為加速階段走步數(shù),decelerate_after_x為開始減速的走步數(shù);Y、Z、E軸的分解與X軸類似。

其中,階段輸出控制狀態(tài)機的控制方式具體為:狀態(tài)在開始時處于S0,此狀態(tài)是對加速、勻速、減速這三個階段的輸出完成信號進行初始化設(shè)置,裝置開始執(zhí)行時,狀態(tài)機轉(zhuǎn)換至S1,經(jīng)過加速階段運動參數(shù)計算器的處理,執(zhí)行加速階段的數(shù)據(jù)輸出;輸出完成會將加速階段輸出完成信號置為1,狀態(tài)機便轉(zhuǎn)換至S2,經(jīng)過勻速階段運動參數(shù)計算器的處理,執(zhí)行勻速階段的數(shù)據(jù)輸出;同樣的,在輸出完成之后將勻速階段輸出完成信號置為真,狀態(tài)機轉(zhuǎn)換至S3,經(jīng)過減速階段運動參數(shù)計算器的處理,執(zhí)行最后一個階段,即減速階段的數(shù)據(jù)輸出,輸出完成,則減速階段輸出完成信號為真,狀態(tài)機回到S0,完成擠出頭合運動的正交分解及輸出工作。

本發(fā)明的有益效果是:本發(fā)明3D打印機擠出頭正交分解運動控制方法及裝置有效利用了硬件并行處理數(shù)據(jù)的特性,以及運動正交分解的特性,有效提高了3D打印速度和打印精度,降低了數(shù)據(jù)處理的復(fù)雜度。該發(fā)明能夠讓驅(qū)動擠出頭運行的四個運動軸同時且獨立運行,提高打印速度,并能有效改善3D打印精度。且3D打印機的電子系統(tǒng)中的其他模塊只需求出擠出頭的合運動參數(shù),本發(fā)明即可根據(jù)擠出頭的合運動參數(shù)將合運動正交分解成四個運動軸的分運動,降低了數(shù)據(jù)處理的復(fù)雜度。

附圖說明

圖1為現(xiàn)有3D打印機解決方案的擠出頭實際運動路徑示意圖。

圖2為現(xiàn)有3D打印機擠出頭運動的處理流程圖。

圖3為三維空間中擠出頭運動的正交分解原理圖。

圖4為本發(fā)明實施例3D打印機擠出頭正交分解運動控制裝置的模塊框圖。

圖5為圖4所示控制裝置中階段輸出控制狀態(tài)機的狀態(tài)遷移圖。

具體實施方式

下面結(jié)合附圖及實例,對本發(fā)明做進一步說明。

在物理學(xué)中,一個物體不管是在二維還是三維中運動,其速度和位移等參數(shù)都存在可正交分解的物理特性。在3D打印機中,擠出頭的運動是建立在三維中實現(xiàn)的,而為了改善傳統(tǒng)解決方案中擠出頭運動驅(qū)動在實際的打印過程中的運行軌跡呈鋸齒狀的缺陷,以及X、Y、Z三個軸需要分時運行的缺點,使得他們能夠獨立地、不受其他軸影響地運行,并驅(qū)動擠出頭的運動更加貼合理論運行軌跡。本發(fā)明實施例提出了基于正交分解的速度分解思想3D打印機擠出頭運動控制方法,將擠出頭的運動分解成四個軸的獨立運動,在具有并行執(zhí)行特性的FPGA硬件平臺上實現(xiàn)四個軸同時運行。

如圖3所示為三維空間中的正交分解原理圖。若3D打印機的擠出頭按照這樣的軌跡運行,可以設(shè)Δs為擠出頭的總位移,X軸的位移為x,Y軸的位移為y,Z軸的位移為z。即利用位移和速度都滿足正交分解的物理特性可以得出,各軸的分速度與合速度之間都存在一個比例關(guān)系。對于擠出頭的運動驅(qū)動而言,擠出頭的運動依賴于梯形速度曲線,每個梯形速度曲線都包含擠出頭從起點到終點所需要的一切參數(shù),包括初始速度、加速度、加速位移、額定速度、開始減速的位移以及退出速度,而基于正交分解的思想,只需要計算得出擠出頭合運動的梯形曲線,就可以根據(jù)正交分解的思想求出X、Y、Z軸的分解梯形速度曲線,將三個軸的速度參數(shù)傳遞給步進電機驅(qū)動器即可分別驅(qū)動三個軸的運動。至于給料軸E軸,它是為X、Y、Z三個軸提供耗材的,E軸所擠出的耗材熔融之后的長度就是X、Y、Z三個軸的位移長度之和,而Δs為這三個軸的和運動位移,故Δs與E軸之間自然也存在一定的比例關(guān)系。

1.X軸的分解

設(shè)擠出頭合運動速度為Vs,合加速度為as,合加速階段的位移為accelerate_until_s,合運動開始減速的位移為decelerate_after_s;X軸的分速度為Vx,分加速度為ax,加速階段走步數(shù)為accelerate_until_x,開始減速的走步數(shù)為decelerate_after_x,則X軸的分解為:

其中axis_steps_per_unit_x是X軸方向單位距離(毫米)所需走的步數(shù),比例系數(shù)為

根據(jù)以上公式,在合運動梯形速度的基礎(chǔ)上,即可得到X軸的梯形速度曲線,將其分出來單獨控制,有效改善打印速度。

2.Y軸的分解

同樣可以設(shè)Y軸的分速度為Vy,分加速度為ay,加速階段走步數(shù)accelerate_until_y,開始減速的走步數(shù)為decelerate_after_y,則Y軸的分解為:

其中axis_steps_per_unit_y是Y軸方向單位距離(毫米)所需走的步數(shù),比例系數(shù)為

3.Z軸的分解

Z軸的運動仍然可由擠出頭合運動分解而來,設(shè)Z軸的分速度為Vz,分加速度為az,加速階段走步數(shù)為accelerate_until_z,開始減速的走步數(shù)為decelerate_after_z,則Z軸的分解為:

其中axis_steps_per_unit_z是Z軸方向單位距離(毫米)所需走的步數(shù),比例系數(shù)為

4.E軸的分解

E軸的運動與X、Y、Z三個軸的運動存在密切的關(guān)系,因為E軸為給料軸,在實際的打印過程中,E軸擠出的耗材是用于X、Y、Z三個軸的運動填充,故E軸擠出的耗材熔融之后的長度等于X、Y、Z軸的位移長度之和,所以E軸與擠出頭的合運動也存在比例關(guān)系,設(shè)E軸的分速度為Ve,分加速度為ae,加速階段走步數(shù)為accelerate_until_e,開始減速的走步數(shù)為decelerate_after_e,則E軸的分解為:

其中axis_steps_per_unit_e是E軸方向單位距離(毫米)所需走的步數(shù),比例系數(shù)為

在FPGA平臺上進行硬件化實現(xiàn),對擠出頭合運動完成正交分解之后即可實現(xiàn)四個運動軸同時且獨立運行,提供打印速度和精度。

圖4為本發(fā)明實施例3D打印機擠出頭正交分解運動控制裝置模塊框圖。對擠出頭合運動的正交分解由運動參數(shù)正交分解器來完成,完成X、Y、Z、E軸的分解。

輸入的數(shù)據(jù)是從RAM緩存器中獲得,所獲得的運動參數(shù)是擠出頭合運動的速度曲線以及各軸所走位移長度的相關(guān)數(shù)據(jù),并將輸入數(shù)據(jù)鎖存(如400所示)。在得到輸入數(shù)據(jù)后,將其送入運動參數(shù)正交分解器401中,對X、Y、Z、E四個運動進行正交分解的初步運算,即利用四個軸的位移除以擠出頭合運動的總位移,得到各個軸正交分解的分解系數(shù),如設(shè)擠出頭的總位移為ΔS,X軸的位移為ΔX,Y軸的位移為ΔY,Z軸的位移為ΔZ,E軸的位移為ΔE,則各軸的正交分解系數(shù)分別為ΔX/ΔS、ΔY/ΔS、ΔZ/ΔS、ΔE/ΔS。后面可根據(jù)此分解系數(shù)計算出四個軸速度曲線的相關(guān)運動參數(shù)。

正交分解器401其實際就是對擠出頭合運動速度曲線的分解,速度曲線分為三個階段,即加速階段、勻速階段以及減速階段,對于本發(fā)明的硬件裝置而言,只能按順序依次輸出某一個運動階段,什么時候應(yīng)該輸出速度曲線哪一個階段的運動參數(shù)這就需要用到模塊中的階段輸出控制狀態(tài)機402來實現(xiàn)。圖5為階段輸出控制狀態(tài)機402的狀態(tài)轉(zhuǎn)換圖。在運動參數(shù)正交分解器中將擠出頭的合運動分解為各個軸的分運動后,通過階段輸出控制狀態(tài)機402來完成各軸的加速、勻速、減速這三個階段的數(shù)據(jù)輸出(包括走步數(shù)、運動方向、初始速度、退出速度、加速度等)。狀態(tài)在開始時處于S0,此狀態(tài)是對加速、勻速、減速這三個階段的輸出完成信號進行初始化設(shè)置。本發(fā)明的硬件裝置開始執(zhí)行時,狀態(tài)機轉(zhuǎn)換至S1,經(jīng)過加速階段運動參數(shù)計算器403的處理,執(zhí)行加速階段的數(shù)據(jù)輸出;輸出完成會將加速階段輸出完成信號置為1,狀態(tài)機便轉(zhuǎn)換至S2,經(jīng)過勻速階段運動參數(shù)計算器404的處理,執(zhí)行勻速階段的數(shù)據(jù)輸出;同樣的,在輸出完成之后將勻速階段輸出完成信號置為真,狀態(tài)機轉(zhuǎn)換至S3,經(jīng)過減速階段運動參數(shù)計算器405的處理,執(zhí)行最后一個階段,即減速階段的數(shù)據(jù)輸出,輸出完成,則減速階段輸出完成信號為真,狀態(tài)機回到S0,完成擠出頭合運動的正交分解及輸出工作。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
临潭县| 大渡口区| 武平县| 山阳县| 泸州市| 达州市| 宜宾市| 湛江市| 成安县| 金塔县| 万安县| 仁怀市| 佛坪县| 白朗县| 西盟| 巴南区| 吉木萨尔县| 武胜县| 凤台县| 星子县| 牡丹江市| 旅游| 临湘市| 长阳| 蚌埠市| 延长县| 皮山县| 玛曲县| 自贡市| 吉林省| 江安县| 牟定县| 长海县| 成武县| 永春县| 巴东县| 竹溪县| 柳州市| 太白县| 达州市| 临江市|