3D印表機的控制及程序?

一些開源項目,比如 RepRap. Fab@Home. Ultimaker, Pwdr。它們的印表機都有自己的軟體吧?這些印表機的控制都是一樣的嗎?都可用Arduino平台,用c/c++來控制嗎?它們自帶的軟體又是怎麼回事? 對於這個開源到底什麼意思還是不太明白,求教。


下面是我曾經在某個網站看到的,比較適合解答你的問題。

我接觸3D印表機差不多兩年多了,大大小小各種各樣的不少,如果要自己做一個,我最推薦的還是跟著Reprap來,先從最最入門的prusa做起。目前全世界絕大多數桌面級FDM 3D印表機都是從Reprap社區里走出來的。

我之前倒是確實沒有聽說過whiteAnt這個機器,粗看了一下,它的亮點是把3D列印和CNC合一了是么? 我想知道樓主選擇這款設計來入門的原因。

有很多人一直在嘗試將3D印表機和CNC合一,但根據我親自使用這些機器的經驗看來,兩種機器的需求不同,所以機械結構的設計必然要適應自身的需求。在「桌面製造」這個價格範圍內,一台精度和穩定性高到可以作為CNC機床使用的三軸平台,在移動速度上就達不到3D印表機對移動速度的要求。反之亦然,一種XY移動速度能滿足3D列印要求的三軸平台設計,在精度和穩定性上必然達不到CNC的要求。不過,我個人對這個方向還是認可的。我自己就希望對reprap進行改進,使之具備初級CNC的能力,能夠將覆銅板加工成電路板,這樣reprap離複製自身就又近了一步。 (實際上reprap社區里也有人做出過這種設計,不過穩定性和精度仍在實驗中)

另一方面,tool chain是你必須要考慮的問題。開源社區里那麼多種工具可以選擇,當然是擇優而取咯。我看到whiteAnt使用ReplicatorG作為默認控制端程序,這不是一個最優選擇。

3D印表機的軟體,一共分為三個部分:上位機控制軟體,POST軟體(gcode生成器,或者叫切層軟體slicer),以及主控板固件。

先從主控板固件說起。Reprap社區基本都使用arduino作為主控平台,最新的marlin固件經過多年進化已經是非常優秀的固件了,而且用arduino作為固件降低了學習的門檻,所以這一點疑問不大。

再說slicer,目前主流的slicer有skeinforge,slic3r,kisslicer以及makerbot slicer幾種。其中skeinforge能夠控制的參數最多,但是學習曲線也最陡。kisslicer效果很好,但是是windows only的閉源軟體。makerbot slicer就不說了,是makerbot拿到風投從開源轉向閉源之後跟著自己的makerware控制台推出的,分層速度雖然快,但是仍然有不少bug。最推薦的是完全開源的slic3r,速度快,功能強,用perl編寫,完全開源,可以隨意fork,增加/調整你自己想要的功能。

第三就是上位機控制軟體,這個花樣就比較多了,有基於processing的replicatorG,功能強大的pronterface,Repetier-Host等等。replicatorG是makerbot的人研發的一個開源軟體,使用skeinforge作為默認slicer,但是現在已經被makerbot公司拋棄(makerbot推出了閉源的makerware)。我不推薦replicatorG主要是因為skeinforge的學習曲線太陡了,前期投入時間比較大;再加上skeinforge切層耗時超久,特別浪費時間。最新的replictorG40雖然對slic3r進行了實驗,但是默認配置的效果不好。不過我自己用slic3r0.9.7針對Makerbot Replicator 1代做了一個配置文件,效果還過的去,所以這個不算硬傷啦。

pronterface採用slic3r作為默認slicer,比較推薦。

Repetier-Host我沒有用過很久,不過據說評價不錯。

綜上,軟體工具鏈中,marlin+slic3r+pronterface是我最推薦的組合。樓主既然是入門,推薦裝一台Prusa,用這個組合,花費應該能控制在3k人民幣左右。而且Prusa的塑料件可以自我複製,所以下一台Prusa或者其他型號的Reprap就可以以更低的成本獲得了。

最後,社區的活躍程度對於新手來說特別重要,Reprap是世界上最活躍的3D印表機社區


無論是不是3D印表機,他都是印表機,其內部就是一塊工控板+一個單片機晶元,現在很多都是arm9的晶元,單片機晶元使用彙編和C語言進行編程

單片機嵌入無線網路,並編寫對應的程序即可使其他機器通過無線網路連接進行遠程遙控

這涉及到單片機驅動程序編程,請參考對應的書籍

開源和他們自帶的軟體的意思就是開放對應的介面和源碼,允許你在他們代碼的基礎上自行修改,並遵守對應的協議來進行再發布


推薦閱讀:

汽車尾標想改裝成守望先鋒的Logo,需要怎麼實現?
如何使用3D印表機?
如何學習3d列印?

TAG:程序員 | 編程語言 | 軟體業 | 3D列印 | 3D印表機 |