0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

構(gòu)建一個簡單的基于Arduino的CNC繪圖儀

科技觀察員 ? 來源:circuitdigest ? 作者:加拉布齊·約翰保 ? 2022-12-29 11:00 ? 次閱讀

CNC機床是計算機化的數(shù)控機床,用于根據(jù)輸入其控制器單元的設(shè)計程序繪制任何東西或設(shè)計任何機械零件??刂破鲉卧梢允怯嬎銠C或微控制器。CNC機床具有步進電機伺服電機,可根據(jù)進料程序繪制設(shè)計。

在研究了數(shù)控機床之后,我決定使用當?shù)乜捎玫牟牧辖ㄔ熳约旱臄?shù)控機床。世界上有很多數(shù)控機床,其中一些技術(shù)性很強,很難正確制造甚至操作它們。出于這個原因,我決定制作一個簡單的基于Arduino的CNC繪圖儀,這是迄今為止最簡單的制作。您也可以將其用作Arduino CNC繪圖機,只需進行少量修改。

這款DIY Arduino數(shù)控機床可以繪制大多數(shù)基本形狀,文本甚至卡通。它的操作類似于人手的書寫方式。與人類書寫或繪畫的方式相比,它更快、更準確。查看本教程末尾的演示視頻。

構(gòu)建 Arduino 數(shù)控機床:

對于CNC 繪圖機的操作,需要 3 個軸(x 軸、y 軸和 z 軸。x 軸和 y 軸協(xié)同工作,在普通紙上創(chuàng)建 2D 圖像。這些 x 軸和 y 軸彼此成 90 度放置,使得平面上的任何點都由給定的 x 和 y 值定義。Z軸用于將筆抬起并降低到普通紙上。

根據(jù)要繪制的圖像,計算機將生成適當?shù)淖鴺瞬⑼ㄟ^USB端口將它們發(fā)送到微控制器。微控制器解釋這些坐標,然后控制電機的位置以創(chuàng)建圖像。在這里,我們使用Arduino作為微控制器來構(gòu)建這臺CNC機床。三軸運動由步進電機提供,步進電機將由Arduino板控制。

您需要什么:

注意:我的設(shè)計在尺寸和所用材料方面在硬件上有很大不同。我找不到舊的DVD驅(qū)動器,所以我選擇了打印機部件。無論您使用哪種方法,請確保它具有步進電機。

硬件要求:

鋁板 (710mm x 710mm)

舊的惠普/愛普生打印機。您可以使用舊的計算機DVD驅(qū)動器

螺栓和螺母

有機玻璃

Arduino UNO

L293D 電機驅(qū)動器擴展板或 Arduino CNC 擴展板

微型伺服電機

一支筆

pYYBAGOtAseAePMfAACbSxB6x5Y059.jpg

poYBAGOtAsiAT35qAAAlXkK9KL4150.jpg

pYYBAGOtAsqAG2MVAAAkGCMQ_BQ561.jpg

工具:

螺絲刀

切割工具(鋼鋸)

臺式裝置

數(shù)控繪圖機底座:

該設(shè)備的主體是將機器的所有主要部件支撐在一起的底座,使機器牢固且便攜。在此設(shè)計中,我們將使用鋁來構(gòu)建底座,因為它重量輕,易于彎曲和切割,并且由于不生銹,因此具有良好的光澤外觀。

我的底座的設(shè)計和尺寸如下所示:

pYYBAGOtAs2AetqTAAAXdj8S4iM357.png


注意:所有尺寸均以毫米為單位。

經(jīng)過所有的彎曲和切割,我能夠生產(chǎn)出非常堅固的底座,如下所示:

poYBAGOtAs6ATH6XAACHc6xWojY822.jpg

X、Y 和 Z 軸的組裝:

要制作 x 軸和 y 軸,請使用兩個打印機底座。這些部件中的每一個都包含一個步進電機和一個皮帶驅(qū)動機構(gòu),通常用于來回移動墨盒。

poYBAGOtAsiAT35qAAAlXkK9KL4150.jpg

對于 z軸,使用膠水在 y 軸上安裝一個微型伺服電機。該伺服電機用于上下移動筆。應構(gòu)建良好的支撐機制,使筆可以自由上下移動。

pYYBAGOtAs-AF9RGAACKSuQROuk012.jpg

poYBAGOtAtKAVgJnAACJP87PGLo378.jpg

數(shù)控機床繪圖平臺:

由于這臺機器的巨大尺寸,該設(shè)備能夠在A5尺寸的紙上繪圖。因此,我們將從有機玻璃上切出一個A5(148mmx210mm)大小的平臺,然后用膠水將其粘貼到x軸運動部件上。

poYBAGOtAtSAebWrAACcK_PaKhg482.jpg

數(shù)控機床的布線和電路:

將L293D 電機驅(qū)動器護板插入 Arduino UNO 板上。該屏蔽可同時驅(qū)動兩個步進電機和兩個伺服電機。連接兩個步進電機,如下所示。接地連接應保持未連接狀態(tài),因為電機是雙楊型。這將作為我們的繪圖儀機器的Arduino CNC控制器。

poYBAGOtAtWAJ2wGAAAzSykuu2E277.png

同時將迷你伺服電機連接到伺服1。將 7.5V - 9V 電源連接到電機驅(qū)動器擴展板的電源端口。計算機現(xiàn)已準備好進行測試。

Arduino 數(shù)控機床代碼和測試:

首先,我們需要測試步進電機,看看它們是否正確連接。

由于我們使用的是 L293D 電機驅(qū)動器擴展板,因此我們需要從此處下載 AFmotor 庫。然后將其添加到Arduino IDE庫文件夾中。確保將其重命名為 AFMotor。如果Arduino IDE已打開,請將其關(guān)閉并再次打開,然后單擊文件->示例->Adafruit Motor Shield庫->步進器。確保在工具中選擇正確的端口和板,然后將代碼上傳到 Arduino 板。在步進電機一號上應觀察一些運動。

要測試電機 2,請在下一行中將電機端口從 2 更改為 1,然后再次上傳代碼。

#include // Connect a stepper motor with 48 steps per revolution (7.5 degree) // to motor port #2 (M3 and M4) AF_Stepper motor(48, 2);

用于數(shù)控機床的Arduino代碼:

pYYBAGOtAtmAF9lMAAB43Cn_yrQ052.png

步進電機正確響應后,從下面的代碼部分復制CNC機床的Arduino代碼,并將其上傳到Arduino板。您可以從以下鏈接下載代碼。

Arduino CNC 代碼下載

數(shù)控機床G代碼:

G - CODE是我們告訴計算機化機器(CNC)做某事的語言。它基本上是一個包含 X、Y 和 Z 坐標的文件。

例如:

G17 G20 G90 G94 G54 G0 Z0.25X-0.5 Y0. Z0.1 G01 Z0. F5. G02 X0. Y0.5 I0.5 J0. F2.5 X0.5 Y0. I0. J-0.5 X0. Y-0.5 I-0.5 J0. X-0.5 Y0. I0. J0.5 G01 Z0.1 F5. G00 X0. Y0. Z0.25

僅為一個簡單的正方形編寫 G 代碼可能確實具有挑戰(zhàn)性,但幸運的是,我們有一個可以幫助我們生成 G 代碼的軟件。該軟件稱為“Inkscape”,請從此處下載。

您可以使用Inkscape生成自己的G代碼,我們將在下一節(jié)中解釋,或者您可以使用互聯(lián)網(wǎng)上現(xiàn)成的G代碼。

在我向您展示如何使用Inkscape生成G代碼之前,讓我們討論如何將這些G代碼發(fā)送到Arduino。使我們能夠?qū)代碼發(fā)送到Arduino的軟件稱為處理。

處理 IDE 以上傳 G 代碼:

該平臺將幫助我們向Arduino板發(fā)送G代碼。為此,您必須下載 GCTRL。偏微分方程文件。

從這里下載 GCTRL.pde 文件并使用處理 IDE 打開它

poYBAGOtAtuAE9spAACTD0T0ExY392.png

在處理 IDE 中打開它后,單擊“運行”。將出現(xiàn)一個窗口,其中包含所有說明。按鍵盤上的p。系統(tǒng)將要求您選擇一個端口。因此,請選擇連接Arduino板的端口。我的情況是端口 6。

現(xiàn)在按g并瀏覽到保存 G 代碼的文件夾。選擇正確的 G 代碼,然后按回車鍵。如果一切都連接正確,您應該會看到您的設(shè)備開始在紙上繪制。

如果要終止進程,只需按x,設(shè)備將停止它正在執(zhí)行的任何操作。

如何生成自己的G代碼:

我們提到Inkscape是我們將用來生成 G 代碼的軟件。在此示例中,我們將創(chuàng)建一個簡單的文本(HELLO WORLD),如下所示。

pYYBAGOtAt2AZp3cAACOzdG5gMg728.png

注意:Inkscape沒有將文件保存為G代碼的內(nèi)置方式。因此,您需要安裝一個附加組件,該附加組件可以將圖像導出到 G-CODE 文件。從這里下載這個MakerBot Unicorn插件,并附上安裝說明。

如果安裝成功,請打開Inkscape,轉(zhuǎn)到“文件”菜單,然后單擊“文檔屬性”。首先將尺寸從 px 更改為毫米。同時將寬度和高度減小到 90 毫米。現(xiàn)在關(guān)閉此窗口。正方形將作為繪圖區(qū)域出現(xiàn)。這是我們將用來編寫文本的區(qū)域。

現(xiàn)在在左側(cè)欄上,單擊創(chuàng)建和編輯文本對象選項卡。鍵入文本“HELLO WORLD”并將其放置在正方形的右上角,如下所示。

pYYBAGOtAt-AEILRAABzNaHz1nI892.png

單擊文本并選擇您喜歡的字體樣式類型。單擊應用并關(guān)閉。

現(xiàn)在單擊路徑并選擇“對象到路徑”"

您的文本現(xiàn)在可以另存為 G 代碼了。單擊文件 ->另存為,然后將文件名鍵入為“hello world”

將文件類型更改為“MakerBot Unicon G-Code”,如下圖所示。僅當加載項安裝成功時,才會顯示此信息。最后單擊保存,然后單擊彈出窗口中的確定。

pYYBAGOtAuKAaRFfAABiRVuUH6g464.png

您已經(jīng)生成了一個 G 代碼,可以使用前面的過程對其進行繪制。

GRBL 控制器:

poYBAGOtAuWAf8CpAABnh_80OQk636.png

一旦您設(shè)法使用 Inkscape 生成 G 代碼,可能需要查看 G 代碼以確保它在繪圖限制范圍內(nèi)。

繪圖限制在Arduino CNC CODE中設(shè)置,如下所示:

pYYBAGOtAuiAPjS3AACHLTahEKM723.png

上面在GRBL控制器中顯示的圖像不應超出上述CNC Arduino代碼中顯示的限制。如果它超出這些限制,例如朝向 x 軸的負側(cè),則不會繪制負側(cè)上的該部分。

在此示例中,x 和 y 值的范圍為 0mm 到 40mm。

由于我使用的是可以在更大面積上打印的打印機部件,因此我將最大值從40mm更改為60mm。

每當您使用Inkscape生成G代碼時,您都可以首先在GRBL程序中打開該G代碼,以查看它是否在這些限制范圍內(nèi)。如果不在里面,您需要在 Inkscape 中調(diào)整圖像大小,直到它在您的限制范圍內(nèi)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)控機床
    +關(guān)注

    關(guān)注

    19

    文章

    747

    瀏覽量

    45931
  • CNC
    CNC
    +關(guān)注

    關(guān)注

    7

    文章

    269

    瀏覽量

    34839
  • Arduino
    +關(guān)注

    關(guān)注

    187

    文章

    6453

    瀏覽量

    185933
收藏 人收藏

    評論

    相關(guān)推薦

    DIY能在布料上壓印電路的繪圖儀

    你曾經(jīng)想過隨時隨地繪副藝術(shù)作品嗎?像藝術(shù)家樣。沒藝術(shù)天分沒關(guān)系,用科技來彌補你的天賦吧。今的DIY教程是做
    發(fā)表于 11-26 14:52

    怎樣使用Arduino構(gòu)建繪圖儀

    怎樣使用Arduino構(gòu)建繪圖儀呢?有哪些操作步驟呢?
    發(fā)表于 01-17 06:44

    利用Arduino平臺把廢舊DVD光驅(qū)改成CNC繪圖儀

    廢舊DVD光驅(qū)改造成CNC繪圖儀,與之前的寫作業(yè)機器人非常相似哦!
    的頭像 發(fā)表于 05-24 06:03 ?6935次閱讀
    利用<b class='flag-5'>Arduino</b>平臺把廢舊DVD光驅(qū)改成<b class='flag-5'>CNC</b><b class='flag-5'>繪圖儀</b>

    如何制作CNC繪圖儀

    轉(zhuǎn)向處理軟件,它有點像Arduino IDE‘見圖10’所以你應該打開‘CNC程序’文件你可以從下面的鏈接下載并運行它‘見圖11 ’,將出現(xiàn)第二窗口,你需要按下鍵盤中的后
    的頭像 發(fā)表于 08-27 09:43 ?5201次閱讀
    如何制作<b class='flag-5'>CNC</b><b class='flag-5'>繪圖儀</b>

    如何制作基于arduino的微型CNC繪圖儀機器

    CNC繪圖機基本上是2.5軸CNC機器,它在X和Y軸上都有兩步進電機,在Z軸上有伺服電機。
    的頭像 發(fā)表于 05-14 09:57 ?8111次閱讀

    如何構(gòu)建低成本的Arduino MiniCNC繪圖儀

    在這個項目中,我將向您展示如何輕松構(gòu)建自己的低成本ArduinoMiniCNC繪圖儀!
    的頭像 發(fā)表于 05-12 17:47 ?3019次閱讀
    如何<b class='flag-5'>構(gòu)建</b><b class='flag-5'>一</b><b class='flag-5'>個</b>低成本的<b class='flag-5'>Arduino</b> MiniCNC<b class='flag-5'>繪圖儀</b>

    數(shù)控筆式繪圖儀開源分享

    電子發(fā)燒友網(wǎng)站提供《數(shù)控筆式繪圖儀開源分享.zip》資料免費下載
    發(fā)表于 10-19 10:58 ?0次下載
    數(shù)控筆式<b class='flag-5'>繪圖儀</b>開源分享

    如何使用DVD驅(qū)動器L293D制作迷你CNC 2D繪圖儀

    電子發(fā)燒友網(wǎng)站提供《如何使用DVD驅(qū)動器L293D制作迷你CNC 2D繪圖儀.zip》資料免費下載
    發(fā)表于 11-01 11:54 ?1次下載
    如何使用DVD驅(qū)動器L293D制作迷你<b class='flag-5'>CNC</b> 2D<b class='flag-5'>繪圖儀</b>

    基于Arduino的Mini CNC 2D繪圖儀

    電子發(fā)燒友網(wǎng)站提供《基于Arduino的Mini CNC 2D繪圖儀.zip》資料免費下載
    發(fā)表于 11-04 09:26 ?1次下載
    基于<b class='flag-5'>Arduino</b>的Mini <b class='flag-5'>CNC</b> 2D<b class='flag-5'>繪圖儀</b>

    PENXZYL Arduino畫筆繪圖儀開源

    電子發(fā)燒友網(wǎng)站提供《PENXZYL Arduino畫筆繪圖儀開源.zip》資料免費下載
    發(fā)表于 11-10 11:47 ?1次下載
    PENXZYL <b class='flag-5'>Arduino</b>畫筆<b class='flag-5'>繪圖儀</b>開源

    構(gòu)建低成本Arduino Mini CNC繪圖儀

    電子發(fā)燒友網(wǎng)站提供《構(gòu)建低成本Arduino Mini CNC繪圖儀.zip》資料免費下載
    發(fā)表于 11-17 11:05 ?1次下載
    <b class='flag-5'>構(gòu)建</b>低成本<b class='flag-5'>Arduino</b> Mini <b class='flag-5'>CNC</b><b class='flag-5'>繪圖儀</b>

    繪圖儀開源項目

    電子發(fā)燒友網(wǎng)站提供《繪圖儀開源項目.zip》資料免費下載
    發(fā)表于 11-22 11:08 ?1次下載
    <b class='flag-5'>繪圖儀</b>開源項目

    制作Arduino XY繪圖儀繪圖機器人極譜

    電子發(fā)燒友網(wǎng)站提供《制作Arduino XY繪圖儀繪圖機器人極譜.zip》資料免費下載
    發(fā)表于 11-29 14:46 ?4次下載
    制作<b class='flag-5'>Arduino</b> XY<b class='flag-5'>繪圖儀</b><b class='flag-5'>繪圖</b>機器人極譜<b class='flag-5'>儀</b>

    基于Arduino的迷你CNC 2D繪圖儀

    由舊 DVD 驅(qū)動器和 L293D 電機防護罩制成的迷你 CNC 2D 繪圖儀。非常便宜但很有趣。它可以繪制從PC上傳的任何圖像。這個項目是關(guān)于如何使用 Arduino 作為這臺機器的大腦
    發(fā)表于 12-20 15:39 ?3次下載

    基于Arduino迷你CNC 2D繪圖儀

    電子發(fā)燒友網(wǎng)站提供《基于Arduino迷你CNC 2D繪圖儀.zip》資料免費下載
    發(fā)表于 06-26 14:52 ?1次下載
    基于<b class='flag-5'>Arduino</b>迷你<b class='flag-5'>CNC</b> 2D<b class='flag-5'>繪圖儀</b>