激光雕刻機(jī)系統(tǒng)設(shè)計,激光雕刻,系統(tǒng),設(shè)計
目 錄
1 緒論 1
1.1題背景及意義 1
1.2國內(nèi)外研究概況 2
1.3設(shè)計要求 2
1.4主要研究內(nèi)容 2
2 系統(tǒng)組成及其工作原理 3
2.1系統(tǒng)的組成 3
2.2系統(tǒng)的工作原理 4
3 硬件電路的設(shè)計 4
3.1系統(tǒng)機(jī)械結(jié)構(gòu)設(shè)計 4
3.2 基于Atmel 328構(gòu)成的最小系統(tǒng) 7
3.1.1復(fù)位系統(tǒng) 8
3.3 電機(jī)驅(qū)動模塊 9
3.4繼電器驅(qū)動激光頭電路 11
3.5電源電路 12
4 軟件系統(tǒng)設(shè)計及系統(tǒng)調(diào)試 13
4.1下位機(jī)程序的燒寫 13
4.2 上位機(jī)軟件Grbl Controller 17
4.2.1 Grbl Controller簡介 17
4.2.2 解讀Grbl Controller 源碼 19
4.3連接電路 20
4.4裝配機(jī)械結(jié)構(gòu) 22
4.5生成NC文件 25
4.5.1微店管家使用 25
4.5.2ARTCAM使用簡介 26
4.6調(diào)試過程問題以及解決方法 28
4.7誤差分析以及避免方法 29
5 總結(jié)與展望 30
5.1總結(jié) 30
5.2展望 30
參考文獻(xiàn) 30
附錄一機(jī)械原理圖與實物圖 31
附錄二所有元器件以及購物清單 32
附錄三 修改后的部分代碼 33
致謝 34
基于AVR的激光雕刻機(jī)設(shè)計
1 緒論
1.1題背景及意義
激光雕刻機(jī)(Laser Engraving )加工物件是依靠數(shù)控技術(shù)為基礎(chǔ),激光為加工媒介。加工物件在激光雕刻照射下瞬間的熔化和氣化的物理變性,能使激光雕刻達(dá)到加工的目的。激光加工特點:與材料表面沒有接觸,不受機(jī)械運(yùn)動影響,表面不會變形,一般無需固定。[
]它不受材料的束縛,加工材料要求比較低。激光雕刻機(jī)的加工精度高,并且加工速度快,應(yīng)用領(lǐng)域很廣泛。它的加工平臺是由計算機(jī)控制、電機(jī)傳 動、皮帶和滑動輪帶動,采用逐點標(biāo)記方法使用激光雕刻出各種文字,符號和圖案等等,它能很好的識別真?zhèn)?,對于追蹤產(chǎn)品質(zhì)量有特殊的意義。
用激光雕刻和切割物體,過程簡單,耗資較低,如同在打印機(jī)打印紙張一樣。上位機(jī)軟件Grbl Controller可以在Windowsxp和linux等多系統(tǒng)環(huán)境下使用。平面建模軟件 ,如CorelDraw、ArtCam等進(jìn)行設(shè)計 ,掃描得到的圖形,矢量化的圖文及多種CAD文件都可輕松地“打印”到雕 刻機(jī)中。與打印機(jī)打印不同的地方是,打印機(jī)將墨粉涂抹到紙張上,而激光雕刻是將高能量的激光束射到木制品、亞克力、塑料制品、石材等材料表面之上使材料發(fā)生化學(xué)變化從而達(dá)到雕刻效果。[
]激光的出現(xiàn)在短短的時間內(nèi)已經(jīng)改變了人們的生活,改變了生活得方方面面,帶動了產(chǎn)業(yè)的變革。總的來說激光雕刻具有以下幾個特點:
1、 對材料要求比較少,而且對材料表面幾乎沒有任何傷害。由于發(fā)生的化學(xué)反應(yīng)會使材料瞬間氣化,所以雕刻相對傳統(tǒng)工藝更加安全。
2、 范圍廣泛并且雕刻成本相對較低。
3、 精確細(xì)致,雕刻精度相對比較高。
該激光雕刻機(jī)由于激光頭瓦數(shù)(100mw藍(lán)紫激光頭)較小所以只能雕刻紙制品,皮革,竹片,木板有色塑料等材料。
36
1.2國內(nèi)外研究概況
激光是20世紀(jì)以來人類的又一重大發(fā)明,它的原理早在1916 年已被著名的物理學(xué)家愛因斯坦發(fā)現(xiàn),但要直到1958 年激光才被首次成功制造。激光是在有理論準(zhǔn)備和生產(chǎn)實踐迫切需要的背景下應(yīng)運(yùn)而生的,它一問世,就獲得了異乎尋常的飛快發(fā)展,激光的發(fā)展不僅使古老的光學(xué)科學(xué)和光學(xué)技術(shù)獲得了新生,而且導(dǎo)致整個一門新興產(chǎn)業(yè)的出現(xiàn),并帶動了一些新型學(xué)科的發(fā)展,如全息光學(xué)、傅立葉光學(xué)、非線性光學(xué)、光化學(xué)等。[
]
我國激光雕刻平面市場一直緊跟世界發(fā)展潮流,但是,幾乎國內(nèi)的所有激光設(shè)備都滯留在平面雕刻的階段,到目前為止依然沒有一家企業(yè)或科學(xué)技術(shù)研究所能拿出一臺三維激光雕刻機(jī)。一些精細(xì)的三維模型依舊依靠機(jī)器雕刻,或者手工雕刻。但是機(jī)雕和手雕都有很大的局限性和弱點,制約了精雕工藝的發(fā)展。
1.3設(shè)計要求
本次畢業(yè)設(shè)計主要要求為:
1. 學(xué)習(xí)了解AVR控制器結(jié)構(gòu)與工作原理;
2. 學(xué)習(xí)和掌握solidwork軟件繪制機(jī)械;
3. 掌握Altium Designer 09繪制Pcb雙面電路板的方法;
4. 掌握Grbl Controller 軟件的使用;
5. 掌握ArtCam繪制矢量圖并生成G代碼;
1.4主要研究內(nèi)容
本次課題使用Atmel 328為主控芯片來實現(xiàn)對物體進(jìn)行激光雕刻。主要有:
操控Arduino IDE開發(fā)平臺來進(jìn)行arduino 2560系列編程實現(xiàn)各項功能;
1. 上位機(jī)軟件Grbl Controller的調(diào)試及更改關(guān)鍵代碼;
2. 6560步進(jìn)電機(jī)驅(qū)動電路板的研究;
3. 電源電路及繼電器開關(guān)電路的研究;
4. 繪制矢量圖軟件ArtCam的使用;
2 系統(tǒng)組成及其工作原理
2.1系統(tǒng)的組成
基于AVR的激光雕刻機(jī)設(shè)計主要是基于Atmel 公司的328系列芯片實現(xiàn)的,其設(shè)計有13個數(shù)字輸入輸出端口,以及5個模擬信號端口。而且基于該芯片的最小開發(fā)系統(tǒng)板Arduino Nano體積小巧。它可以輕松的插在任何一個DIP插座或者是面包板上。它具有一個USART接口(通用同步/異步接收器/發(fā)送器)[
]以及一個TWI(兩線串行接口)外圍設(shè)備,在Nano上它的SDA和SCL腳在模擬輸入引腳A4和A5口。此外由于體積較小它只有一個USB口作為供電和下載的作用。設(shè)計的激光雕刻機(jī)從電子線路上主要包括以下幾個模塊:激光頭繼電器模塊,電源模塊,電機(jī)及其驅(qū)動電路模塊。整個系統(tǒng)工作框圖如圖1.1所示。
生成G代碼
電源電路
激光頭運(yùn)動開始雕刻
驅(qū)動繼電器電路
驅(qū)動X,Y軸步進(jìn)電機(jī)
下位機(jī)arduino
Nano
解析G代碼生成刀路
上位機(jī)(Grbl Controller)
刻畫模型
導(dǎo)入圖片
圖1.1系統(tǒng)結(jié)構(gòu)框圖
2.2系統(tǒng)的工作原理
主控是基于AVR單片機(jī)的控制器,編譯時所采用的編譯環(huán)境是Arduino IDE 1.6.1,編寫采用的機(jī)器語言是C++。如果想要激光雕刻機(jī)工作應(yīng)該更改其頭文件,需要在
文件中設(shè)置。頭文件部分代碼如圖所示。該段代碼定義了板子傳輸速率,和復(fù)位EEPROM的文件名稱。
圖2.1 部分頭文件代碼示例
實際上當(dāng)人們使用激光雕刻機(jī)雕刻時,需要通過一個界面進(jìn)行控制和觀測,我們使用的上位機(jī)是Grbl Controller軟件。該軟件是一款全部開源的軟件,它的作用主要是將待打印模型圖生成數(shù)控代碼傳輸?shù)郊す獾窨虣C(jī)的主控板中,并且可以在軟件中看到打印機(jī)的工作情況(激光的暗滅、XY兩主軸的位置參數(shù)、當(dāng)前打印狀態(tài)等),同時能夠在特殊情況下進(jìn)行手動調(diào)整參數(shù)。即通過上位機(jī)軟件來控制下位機(jī)的運(yùn)動。
3 硬件電路的設(shè)計
3.1系統(tǒng)機(jī)械結(jié)構(gòu)設(shè)計
本次課程設(shè)計所采用的是十字滑臺結(jié)構(gòu),該結(jié)構(gòu)的主要特點是只有X,Y兩個主軸,易于實現(xiàn)在實際生產(chǎn)生活中便于拿取。這次設(shè)計主要是由絲桿和同步輪來控制激光頭的走向。實現(xiàn)其在水平面上的運(yùn)動。如下圖所示。
十字滑臺是立式加工中心的關(guān)鍵零 部件之一,主要起支承工作臺并使之沿 X 軸方向作左右運(yùn)動的作用。十字滑臺(又名滑鞍)的剛度和固有頻率直接影響機(jī) 床整機(jī)的剛度和固有頻率,并最終影響 機(jī)床的加工精度。[
]
如圖3.1所示3D仿真模型十字滑臺結(jié)構(gòu)
圖3.2實物所示十字滑臺結(jié)構(gòu)
電機(jī)與絲桿之間通過聯(lián)軸器實現(xiàn)連接實現(xiàn)了X,Y軸的運(yùn)動:
圖3.3步進(jìn)電機(jī)與絲桿連接
而兩個平行的X(Y)軸絲桿利用同步帶和同步輪實現(xiàn)聯(lián)動:
圖3.4 3D建模與實物圖所示同步帶帶動另外Y軸進(jìn)行運(yùn)動
機(jī)械設(shè)計主要分為以下幾個步驟:
1. 利用Solidworks軟件進(jìn)行3D模型的建立;
2. 利用Solidworks軟件進(jìn)行受力分析,更改模型得到最終3D圖樣;
3. 利用3D打印機(jī)打印一些精度要求較低,受力較小的器件;
4. 按照圖形尺寸購買所需絲桿,同步帶,同步輪;
5. 按照圖紙所示進(jìn)行裝配;
3.2 基于Atmel 328構(gòu)成的最小系統(tǒng)
此次設(shè)計的主控芯片室友Atmel 328構(gòu)成的最小系統(tǒng),簡稱Arduino Nano。
首先介紹一下本次畢業(yè)設(shè)計主控芯片Atmel 328系列芯片:
圖3.5所示ATmega328的簡化框圖
技術(shù)參數(shù)
處理器
程序存儲器
數(shù)據(jù)存儲器
EEPROM
芯片引腳
數(shù)字I/O引腳
模擬輸入
PWM輸出
串口
Arduino Nano
ATmega328
32KB
2KB
1KB
28/32*
14
6
6
1
Arduino Nano其技術(shù)參數(shù)如表3.1所示:
表3.1 Nano技術(shù)參數(shù)
通過鏈接到PC的USB線給它供電。USB標(biāo)準(zhǔn)允許向另外一個未枚舉USB設(shè)備(就是插入USB總線但是沒有向主機(jī)報告自己身份的設(shè)備,例如USB電源轉(zhuǎn)接頭)提供5.0V最大100mA的電流,而枚舉了的USB設(shè)備最多可以提供500mA的電流。Nano上還設(shè)置了一個3.3V穩(wěn)壓器。其工作時鐘一般為16MHz,每一路能輸出和接入最大電流為40mA。[
]
圖3.6 最小系統(tǒng)
此外,某些引腳有特異功能,串行信號:串行0 --- 0(RX)和1(TX);。串行端口0和內(nèi)部USB TTL atmega8u2芯片連接到接收信號提供串口TTL電平。2路外部中斷:2(中斷0),3(中斷 1)。觸發(fā)中斷的方式有多種,可設(shè)置為上升沿觸發(fā)、或者設(shè)置為下降沿觸。6路PWM脈沖寬度調(diào)制(3,5,6,8,9,10):提供8位PWM輸出。含有SPI通信接口Arduino用于測試其好壞的LED的接口,當(dāng)輸出給LED為高電平是LED亮,當(dāng)輸出給LED為低電平是LED滅。其中6模擬量輸入:每條道路都有10位分辨率(即,1024個不同的值),默認(rèn)的輸入信號范圍為0~5V。
3.1.1復(fù)位系統(tǒng)
復(fù)位電路肩負(fù)著上單片機(jī)在程序執(zhí)行出現(xiàn)問題時復(fù)位的角色,復(fù)位引腳RESET和復(fù)位電路之間有一個觸發(fā)器開關(guān),其作用是減少噪聲干擾,每經(jīng)過一個機(jī)器周期,復(fù)位電路通過輸出電平采樣,之后根據(jù)所需要的信號進(jìn)行內(nèi)部復(fù)位操作。在單片機(jī)的時鐘電路正常工作后,當(dāng)RST引腳上連續(xù)給出兩個機(jī)器周期的1時,芯片就會自動默認(rèn)復(fù)位操作。
圖3.7復(fù)位電路
3.3 電機(jī)驅(qū)動模塊
電機(jī)驅(qū)動使用TB6560AHQ作為驅(qū)動芯片,驅(qū)動2個2相42步進(jìn)電機(jī)。
圖3.8 6560驅(qū)動正面照
功能簡介:
1. 工作電壓直流10V-35V。建議使用開關(guān)電源DC24V供電。
2. 采用6N137高速光藕,保證高速不失步。
3. 采用東芝TB6560AHQ全新原裝芯片,內(nèi)有低壓關(guān)斷、過熱停車及過流保護(hù)電路, 保證最優(yōu)性能。
4. 額定最大輸出為:±3A,峰值3.5A。
5. 適合42,57步進(jìn)3A以內(nèi)的兩相/四相/四線/六線步進(jìn)電機(jī),不適合超過3A的步進(jìn)電機(jī)。
6. 自動半流功能。
7. 細(xì)分:整步,半步,1/8步,1/16步,最大16細(xì)分。
在同類產(chǎn)品中的特色:
1、電流級逐可調(diào),滿足多種應(yīng)用需求。
2、自動半流可調(diào)。
3、采用6N137高速光藕,保證高速不失步。
4、電流采樣電阻采用高精度、大功率電阻,保證電機(jī)穩(wěn)定運(yùn)行。
5、板印設(shè)置說明,不用說明書亦可操作。
6、采用厚密齒散熱器,散熱良好。
表3.2 6560工作電流設(shè)置
表3.3 靜止時最小電流
靜止時最小電流一般設(shè)置為20%。
表3.4 電機(jī)驅(qū)動細(xì)分設(shè)置和衰減設(shè)置
經(jīng)過查閱資料得知,2相42步進(jìn)電機(jī)額定電流為1.5A,但實際操作中給1.5A電機(jī)發(fā)熱太嚴(yán)重,所以最后決定給1.2A電流。本次畢業(yè)設(shè)計中T8絲桿導(dǎo)程為8mm(滑塊轉(zhuǎn)動一周走過的行程為8mm),所以設(shè)置為8倍細(xì)分。即撥碼開關(guān)數(shù)值
表3.5 撥碼開關(guān)數(shù)值
數(shù)值
SW1
SW2
SW3
S1
S2
S3
S4
S5
S6
0
0
0
1
1
1
0
0
1
1
1
至此步進(jìn)電機(jī)設(shè)置完畢。2相42電機(jī)1.2A工作電流點擊扭力為:
(P為工作功率;n為輸出的轉(zhuǎn)速)
經(jīng)計算得到2相42電機(jī)扭矩為5.5kg/cm,可以滿足X,Y軸運(yùn)動。
主控板采用16MHz晶振,2相42步進(jìn)電機(jī)步距角為:,采用8倍細(xì)分驅(qū)動,連接一個30mm長的絲桿所以最小單個脈沖可轉(zhuǎn)動最小距離為:
該精度基本可以滿足一般雕刻要求。
導(dǎo)程為8mm的T8絲桿,所以X,Y軸電機(jī)參數(shù)為:
即200個脈沖電機(jī)轉(zhuǎn)動一周。
3.4繼電器驅(qū)動激光頭電路
激光頭只有兩種狀態(tài),用繼電器開關(guān)控制即可。而且5v繼電器響應(yīng)狀態(tài)以及相應(yīng)時間可以滿足激光頭活動狀態(tài)。采用電磁繼電器,電磁繼電器工作原理和特性是電磁式繼電器,這種繼電器由鐵芯,線圈,銜鐵,觸電簧片等組成。只要在繼電器線圈兩端加上電壓,線圈中就會有電流流過,有電磁感應(yīng)得知,此時會產(chǎn)生磁力,銜鐵就會在電磁力的作用下克服彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當(dāng)線圈斷開點以后,磁力隨之消失,銜鐵就會在彈簧的反作用力返回,使動觸點與的靜觸點(常閉觸點)吸合。通過電磁的效應(yīng),從而達(dá)到了在電路中的導(dǎo)通、切斷的目的。區(qū)分繼電器的“常開、常閉”觸點:通常是根據(jù)繼電器線圈未通電時處于斷開的靜觸點,稱為“常開觸點”;處于接通的靜觸點稱為“常閉觸點”。[
]
圖3.12 繼電器電路
通過三極管達(dá)到控制電流的作用使繼電器可以閉合或者斷開。
3.5電源電路
在本次設(shè)計中電源電路主要有兩部分:
1.為電機(jī)驅(qū)動板提供電源;
2.為激光頭提供5V電源;
圖3.13 24v開關(guān)電源及其接線圖
接220v轉(zhuǎn)24v電源,驅(qū)動板電源電路:
激光頭5v供電電源用3節(jié)5號電池代替。效果也是很理想的。
4 軟件系統(tǒng)設(shè)計及系統(tǒng)調(diào)試
4.1下位機(jī)程序的燒寫
上位機(jī)軟件的燒寫主要是講 .hex文件燒入到AVR中從而控制X,Y軸電機(jī)按照NC代碼進(jìn)行雕刻。主要分為以下幾個步驟:
1. 下載工程文件(https://github.com/grbl/grbl)在下圖所示界面上點擊Download ZIP
即可下載工程文件
圖4.1 Grbl controller 官網(wǎng)
2. 下載WinAVR和OpenJumper? Serial Assistant (Arduino燒錄軟件)
3. 設(shè)置WinAVR參數(shù)輸出.hex文件
圖4.2 安裝好以后根目錄下WinAVR軟件
圖4.3 PN主界面介紹
配置過程比較復(fù)雜首先配置字體顏色以及個人喜好,之后開始配置工作菜單
圖4.4 配置avr-gcc菜單
在開始菜單界面點擊:tools--options即可進(jìn)入avr-gcc工具菜單。之后才配置Mfile(這一步至關(guān)重要)Makefile的設(shè)置是將D:\WinAVR\bin下的wish84.exe、tcl84.dll、tk84.dll三個文件(默認(rèn)安裝到D盤)復(fù)制到D:\WinAVR\mfile目錄下。并用PN打開D:\WinAVR\mfile\mfile.tcl。修改成下圖所示:
圖4.5 配置Mfile
之后再設(shè)置ISP Programmer工具。設(shè)置好以后新建一個工程文件,點擊Make all。即可生成想要的Grbl Controller.hex
圖4.6 生成.hex文件
圖4.7導(dǎo)入生成的hex文件
4. 打開OpenJumper? Serial Assistant 串口助手,點擊Hex下載按鈕,配置好參數(shù),
Arduino型號選擇ATmega328 串口選擇電腦上識別到的arduino串口,之后點擊下載即可實現(xiàn)hex文件的燒錄。
在首次使用該軟件時提示Avr-gcc不可用報錯。之后經(jīng)過查閱資料得到解決辦法如下在Arduino IDE根目錄下查找Avr-gcc之后復(fù)制黏貼到串口助手Avr-gcc文件夾下即可。
圖4.8 利用串口助手燒錄hex文件
5. 檢查剛剛燒入的hex文件是否有效,如下圖所示,打開串口調(diào)試在發(fā)送區(qū)域輸入:
>$G 若接受區(qū)反饋到Grbl 0.8c[‘$’ for help]即為成功。接受區(qū)域反饋數(shù)據(jù)為Grbl 版本。
圖4.9驗證hex文件
4.2 上位機(jī)軟件Grbl Controller
4.2.1 Grbl Controller簡介
Grbl是一款針對Atmel AVR ATmega328芯片的嵌入式G代碼編譯和運(yùn)動控制器。 它具有性能高,成本低等優(yōu)點,并且還能基于并口運(yùn)動控制,可以用于用于CNC雕刻。Grbl可以運(yùn)行在Arduino (Duemillanove/Uno) 前提是只要它配備了Atmega 328型芯片。 控制器由計算機(jī)語言編寫并優(yōu)化,利用了AVR 芯片的每一個靈巧特性來實現(xiàn)精確時序和異步控制。它可以保持超過30kHz的穩(wěn)定、無偏差的控制脈沖 它接受標(biāo)準(zhǔn)的G代碼而且通過了數(shù)個CAM工具的輸出測試?;⌒?、圓形和螺旋的運(yùn)動都可以像其他一些基本G代碼命令一樣完美支持。函數(shù)和變量目前并不支持,在以后發(fā)售的版本中可以完美兼容。 Grbl 包含完整的前瞻性加速度控制。它意味著控制器將提前16到20個運(yùn)動來規(guī)劃運(yùn)行速度,以實現(xiàn)平穩(wěn)的加速和無沖擊的轉(zhuǎn)彎。[
]
圖4.10 Grbl 雕刻界面
圖4.11 每個軸的控制界面
如圖所示圖中可以控制單擊按鈕每一步移動尺寸最小移動距離為0.001mm但由于本次畢業(yè)設(shè)計精讀達(dá)不到所以每次最小移動距離為0.1mm。Spindle On是控制激光頭的開關(guān),勾選激光頭應(yīng)該被點亮,去掉是激光頭熄滅。此次激光雕刻機(jī)沒有Z軸但是Grbl支持3軸聯(lián)動,有機(jī)會將在以后的學(xué)習(xí)和生活中利用CNC實現(xiàn)3軸聯(lián)動。
4.2.2 解讀Grbl Controller 源碼
Grbl源代碼由C語言所編寫,其中包括數(shù)個頭文件,以及眾多函數(shù)。下位機(jī)代碼流程圖如圖所示:
電腦(上位機(jī))
串口通信協(xié)議
控制串口
規(guī)劃刀路
X,Y軸控制
下位機(jī)接受開始雕刻
驅(qū)動電機(jī)
激光頭控制
G代碼
圖4.12 代碼流程圖
對于Grbl 而言可以直接在軟件設(shè)置中配置電機(jī)參數(shù)而不用去修改冗長的代碼。這樣即使是對C語言一竅不通的人們而言也是很容易修改的。如下圖所示:其中前3列數(shù)值為經(jīng)常要修改的數(shù)值,經(jīng) 3.3節(jié)電機(jī)驅(qū)動計算得,X,Y軸步進(jìn)電機(jī)每200個脈沖運(yùn)動1mm,所以將值改為195。改為195的目的是為了減小點擊回滾所帶來的誤差所以稍微小于計算值200。圖中還列出點擊運(yùn)動加速度,以及電機(jī)回滾速度,結(jié)偏差,最小弧度等等......
圖4.13 Grbl 修改界面
4.3連接電路
在準(zhǔn)備好一切之后開始連接電路,按照Grbl頭文件接線即可。部分引腳定義代碼如下:
#define STEPPING_DDR DDRD
#define STEPPING_PORT PORTD
#define X_STEP_BIT 2 // 定義X軸脈沖輸入Pin 2
#define Y_STEP_BIT 3 // 定義Y軸脈沖輸入Pin 3
// #define Z_STEP_BIT 4 // 定義Z軸脈沖輸入Pin 4
(由于Grbl默認(rèn)是3軸的但是存在Z軸會對歸零是有影響所以將有Z軸的地方注釋掉即可)
#define X_DIRECTION_BIT 5 // 定義X軸電機(jī)方向輸入Pin 5
#define Y_DIRECTION_BIT 6 // 定義X軸電機(jī)方向輸入Pin 6
#define Z_DIRECTION_BIT 7 // 定義X軸電機(jī)方向輸入 Pin 7
#define SPINDLE_ENABLE_DDR DDRB
#define SPINDLE_ENABLE_PORT PORTB
#define SPINDLE_ENABLE_BIT 4 // 定義激光頭引腳 Pin 12
將
#define STEP_MASK ((1<80mm才能保證整個裝配體的穩(wěn)定。如圖所示:
圖4.16 為了更加穩(wěn)定的鋁型材
之后在裝好上層的4根鋁架子把上層的鋁架子按照合理的順序安裝好上層,之后在底層的鋁框架上安裝好兩個電機(jī):
圖4.17 安裝好的兩個電機(jī)
接下來安裝激光頭支架和激光頭,如下圖所示:
圖4.18 安裝好的激光頭和激光頭支架
安裝到這一步十字滑臺的結(jié)構(gòu)已經(jīng)完全安裝好了,這是由于有較多地方結(jié)構(gòu)比較松動,結(jié)構(gòu)最為不穩(wěn)定,所以可以用膠槍或者502將電機(jī)固定好,上膠之后等幾分鐘讓其風(fēng)干之后在松開手。
下面一步就是把剛才安裝好的上層的鋁架按照大小扣到剛剛穩(wěn)定好的十字滑臺上方用點力氣將其壓好之后就可以用剩余的角件和內(nèi)六角螺絲將整個鋁架結(jié)構(gòu)固定好。
緊接著就是一步即將安裝好的機(jī)械架子松散的地方用切合的方法將其固定死。這是一個很費(fèi)時費(fèi)力的活,所以安裝的時候一定要小心也一定要有耐心。
最后一步也是至關(guān)重要的一步:上皮帶輪,這一步需要兩個人做,并且還需要3把尖嘴鉗。具體操作如下:首先把接口處用銼刀打磨平整;接著一個人用兩把尖嘴鉗捏到皮帶兩端使皮帶完全處于緊繃的狀態(tài);然后另外一個人一只手拿著502另一只手握著一把尖嘴鉗,先把502涂抹均勻在接口平面處等到膠水涂開以后用另外一只手的尖嘴鉗夾緊接口處利用502的快干性和強(qiáng)粘合性將皮帶黏好。
圖4.19 裝配好以后的激光雕刻機(jī)
裝配好以后經(jīng)過檢測該激光雕刻機(jī)的雕刻面積為15*15??梢杂糜诘窨碳堉破芬约捌じ锖湍绢^。
4.5生成NC文件
NC文件可以直接導(dǎo)入到Grbl中實現(xiàn)雕刻圖案的目的。下面介紹幾個常用的生成NC文件的軟件。
圖4.20 常用的生成NC文件軟件
4.5.1微店管家使用
微雕管家是一款傻瓜軟件,它的使用比較簡單,沒有畫圖功能但是可以把圖片導(dǎo)出為NC文件。具體操作如下:
圖4.21 微雕管家使用
點擊右上方導(dǎo)入圖片之后選中一幅圖片之后點擊連接設(shè)備然后開始雕刻軟件會自動控制激光頭讓其雕刻。要注意的一點是打開微雕管家之后應(yīng)該把Grbl Controller關(guān)掉,因為電腦只給Arduino分配了一個端口,所以必須要關(guān)掉Grbl才可以雕刻。
4.5.2ARTCAM使用簡介
接下來將以artcam生成一個簡單的NC代碼為例講解一下artcam軟件使用。
1. 下載artcam2008,并且打開軟件
2. 在開始界面點擊新建項目——文件新的模型,如下圖所示:
圖4.22 新建artcam文件
3. 輸入自己想要的紙張大小,點擊確定。
4. 在左邊的菜單欄中找到字體選項單擊進(jìn)行設(shè)置字體模式,在輸入框里輸入漢字即可
圖4.23 在輸入框中輸入文字
5. 在左邊的菜單里選取道路路徑,并且選擇加工方式。
圖4.24選取加工方式
6.選區(qū)刀具
圖4.25 選取加工刀具
7. 設(shè)置材料,生成刀路并經(jīng)行預(yù)覽
圖4.26生成刀路并經(jīng)行預(yù)覽
Inkscape軟件使用與ArtCam軟件及其相似,在此不詳細(xì)介紹。
4.6調(diào)試過程問題以及解決方法
在調(diào)試過程中遇到許多問題:
1. 機(jī)械結(jié)構(gòu)問題,先開始第一種機(jī)械結(jié)構(gòu)沒有同步帶結(jié)果由于器件誤差太大導(dǎo)致失敗不得不放棄。結(jié)構(gòu)如下圖:
圖4.27 第一種機(jī)械結(jié)構(gòu)
2. 由于3D打印的零件精度不高有些地方不得不用過盈配合。
4.7誤差分析以及避免方法
主要機(jī)械誤差有:滾珠絲桿螺距誤差;同步帶節(jié)距誤差;傳動反向間隙誤差。
解決方法:優(yōu)化軟件與硬件之間的聯(lián)合(主要);使傳動皮帶繃緊。
5 總結(jié)與展望
5.1總結(jié)
在本次設(shè)計中,通過對資料查找,方案論證,英文資料翻譯,Solidworks硬件電路設(shè)計,Altium Designer繪制PCB,線路板制作,及開源上位機(jī)調(diào)試,學(xué)會了做成一臺激光雕刻機(jī),達(dá)到了預(yù)期的功能。長時間看激光雕刻會的白內(nèi)障,注意對眼睛的保護(hù)。
5.2展望
本次設(shè)計通過硬件組裝和上位機(jī)調(diào)試及實際雕刻體驗,實現(xiàn)了DIY一臺開源激光雕刻機(jī)的愿望,基本上滿足要求。但是本次畢設(shè)還存在一些問題,對過程中的主要改進(jìn)有:
(1)十字滑臺結(jié)構(gòu)不方便增加Z軸,對以后的改進(jìn)比較困難;
(2) 不能脫機(jī)工作,應(yīng)該加一個SD卡槽可以直接讀取NC代碼經(jīng)行雕刻;
(3)實際雕刻空間不是很大,第一次做機(jī)械還有很多值得注意的地方。
參考文獻(xiàn)
[1]百度百科.激光雕刻http://baike.baidu.com/link?url=ZwKD5m4rSoU3P5ssEKpDUXmVniEAwZAvm7JKuj-GYbe8HIG-td_SejFbLxAwxiohDHP4_s1z0uZ5V-ioar4f6_
[2]百度經(jīng)驗.激光雕刻切割技術(shù)淺析.http://jingyan.baidu.com/article/636f38bb0a08bed6b846103f.html
[3]江海河.激光加工技術(shù)應(yīng)用的發(fā)展及展望.光電子技術(shù)與信息,2001: l 14
[4]百度百科.USART:http://baike.baidu.com/link?url=yVRrhCXe9IRXwSE2wMdzBnl4okwvR5m3Jjr_GjS2QAbhvdzNjGvFg3bPlPEjYOvOMGxeyfOHYhMvTZeZ269Dga
[5]蔣素清.立式銑削加工中心結(jié)構(gòu)靜動態(tài)分析[J].長沙大學(xué)學(xué)報,2008,22(2):21~23
[6]Dale Wheat.Arduino技術(shù)內(nèi)幕.人民郵電出版社,2013,7:13
[7]百度文庫.繼電器工作原理.2012,10:1
[8]grbl開源項目代碼 .github.com/simen/grbl 2013-09-12
[9]Mauro Vaccarezza;Veronica Papa.3D printing: a valuable resource in human anatomy education [J].Anatomical Science International.2015.Vol.90.No.1.64-65.
[10]A. D. Squires;E. Constable;R. A. Lewis.3D Printed Terahertz Diffraction Gratings And Lenses[J].Journal of Infrared, Millimeter, and Terahertz Waves.2015.Vol.36.No.1.72-80.
[11]孫帥.誰都可以做微型激光雕刻機(jī)——一起來揭秘數(shù)控設(shè)備的神秘面.無線電雜志,2013:4
21~26
[12]徐曉明.基于嵌入式微處理器的激光雕刻機(jī)系統(tǒng)研究與開發(fā).天津理工大學(xué),2006,12:6~8
附錄一機(jī)械原理圖與實物圖
圖1 原理圖
圖2 組裝實物圖
附錄二所有元器件以及購物清單
器件名稱
數(shù)量
鋁型材300mm
8個
鋁型材95mm
2個
鋁型材115mm
2個
固定角件
12套
T8絲桿長280mm
4套
滾珠軸承內(nèi)徑8mm
6個
6mm光軸長260mm
2個
6mm光軸長280mm
2個
6mm內(nèi)徑光軸軸承
4個
8mm內(nèi)徑光軸軸承
4個
500mw藍(lán)紫激光器
1個
護(hù)目鏡
1副
激光散熱架
1套
聯(lián)軸器5——8
3個
42步進(jìn)電機(jī)
2個
6560電機(jī)驅(qū)動板
2個
220v轉(zhuǎn)24v電源
1個
繼電器電路期間
1套
同步輪內(nèi)徑8mm
4個
皮帶
2m
3D打印機(jī)器件
若干
300*90亞克力板
4塊
Arduino Nano驅(qū)動板
1塊
附錄三 修改后的部分代碼
修改
#ifndef config_h
#define config_h// IMPORTANT:
#define DEFAULTS_GENERIC // Default settings.
#define DEFAULTS_GENERIC// Serial baud rate
#define BAUD_RATE 9600// Serial baud rate
// NOTE: All step bit and direction pins must be on the same port.
#define STEPPING_DDR DDRD
#define STEPPING_PORT PORTD
#define X_STEP_BIT 2 // Uno Digital Pin 2
#define Y_STEP_BIT 3 // Uno Digital Pin 3
//#define Z_STEP_BIT 4 // Uno Digital Pin 4
#define X_DIRECTION_BIT 5 // Uno Digital Pin 5
#define Y_DIRECTION_BIT 6 // Uno Digital Pin 6
//#define Z_DIRECTION_BIT 7 // Uno Digital Pin 7
#define STEP_MASK ((1<
收藏