官术网_书友最值得收藏!

5.3 功能及總體設計

本項目的核心是將Arduino開發板及其控制的步進電機,改造成數控機床,再通過PC端的軟件向Arduino開發板傳輸的G代碼指令,控制步進電機的運作和激光頭的開啟關閉,以達到雕刻的效果。G代碼是控制數控機床常用的指令類代碼,結合坐標使用,共有90多種指令,是一種集成度很高的代碼。

設計主要分為G代碼輸入部分與激光頭輸出部分。G代碼輸入部分主要將圖形轉化為G代碼,輸入Arduino UNO開發板,開發板同時對x軸和y軸步進電機進行驅動,激光頭輸出部分由另一個Arduino UNO開發板控制電流輸入,以達到控制開關的效果。

5.3.1 功能介紹

激光雕刻機可以將輸入的矢量圖或者簡單的線性圖案轉化為G代碼后雕刻到目標上,由于激光頭是紅色的,所以本激光雕刻機不能對反射紅光的物體(如白色、紅色外觀的物體)進行雕刻。本項目希望能做一個相對小型的雕刻機,目前的尺寸是13cm×13cm×20cm,雖然不能達到便攜,但是尺寸已經相對較小。激光雕刻可以解決一些光滑表面上雕刻的問題,并方便地留下相關的信息。

5.3.2 總體設計

本項目的激光雕刻機由輸入和輸出部分組成。輸入部分由Grbl控制器將矢量圖或者線性圖案轉化為G代碼,輸出部分使用了激光筆和步進電機,處理部分用Arduino UNO開發板。

1.整體框架圖

項目整體框架如圖5-1所示。

2.系統流程圖

系統的流程如圖5-2所示。

圖5-1 整體框架圖

圖5-2 系統流程圖

3.總電路圖

系統總電路及Arduino UNO開發板引腳,如圖5-3所示。其中左邊的電機控制x軸方向,右邊的控制y軸方向,引腳連線如表5-1所示。本項目中使用2個Arduino UNO開發板,二者的連線如圖5-3所示,引腳連線如表5-2所示。

圖5-3 系統及Arduino UNO開發板的總電路圖

表5-1 Arduino與直流電機的連接引腳

表5-2 Arduino開發板之間連線

圖5-3(a)是控制步進電機的Arduino開發板通過A4988步進電機驅動板與步進電機相連,一共有2個步進電機。它們在工作時相互垂直分為兩層,共同運作達到激光筆的雕刻位置,然后在一個平面上自由移動。

圖5-3(b)是激光筆的供能電路。圖5-3(b)中左邊的Arduino開發板與圖5-3(a)中的Arduino開發板是同一塊,通過12口發出使能信息,另一塊板根據接收到的信息控制激光筆的亮(雕刻狀態)和暗(非雕刻狀態)。圖5-3(b)中紅色LED燈表示激光筆,激光筆有一個輸入端和一個輸出端,通電時發出的是紅光。

5.3.3 模塊介紹

本項目從硬件和軟件兩方面實現,其中,硬件端模塊有Arduino UNO開發板上的Grbl固件模塊、激光筆供能與使能模塊,軟件端模塊有上位機Grbl Controller模塊、nc文件生成軟件Inkscape模塊。下面分別給出各部分的功能、元件、電路圖和相關代碼。

1.nc文件生成軟件Inkscape模塊

Inkscape是一款開源軟件,用于圖像的處理,在本項目中,用Inkscape的一個擴展功能將想要打印(雕刻)的圖案處理成Grbl Controller可以讀取的路徑文件(.nc),界面如圖5-4所示。

圖5-4 Inkscape的界面

2.Grbl Controller模塊

Grbl Controller的核心功能是向Arduino發送G指令(即G代碼),可以識別Inkscape軟件生成的路徑文件。通過USB口與Arduino UNO上的Grbl固件模塊相連并向其發送G代碼,界面如圖5-5所示。

圖5-5 Grbl Controller的界面

3.Grbl固件模塊

本模塊電路連接如總電路圖5-3所示,由1個Arduino板與2個步進電機驅動板組成,Arduino開發板上下載的是grbl.hex文件,是由WinAVR生成的機器語言碼。Arduino開發板通過USB口與PC端相接,接收有PC端的Grbl Controller發來的G代碼信號,分別控制x軸電機、y軸電機的運動以及激光筆的開關。

通過Xloader向Arduino下載已有程序包grbl.hex,這樣Arduino開發板就能通過USB口識別Grbl Controller發送的G代碼信號,并通過A4988驅動板控制步進電機,文件如圖5-6所示。需要注意pin_map.h中關于引腳號的定義語句:

圖5-6 Grbl的文件及Xloader的上傳操作界面

G代碼的函數:

4.激光筆供能與使能模塊

電路如圖5-3所示,該模塊通過識別Grbl固件模塊中的Arduino開發板12口的使能信號控制激光筆。圖5-3左邊是Grbl固件模塊中的Arduino開發板,右邊是控制激光筆的Arduino開發板。電路部分設計成類似反向器的電路,激光筆的正極接5V電壓,負極接7口并通過電阻后接地。當7口輸出高電平時激光筆兩端電壓較小,此時激光筆不工作;當7口輸出高電平時激光筆兩端電壓較大,此時激光筆工作。

控制激光筆代碼如下:

主站蜘蛛池模板: 嘉荫县| 遂昌县| 土默特左旗| 莱芜市| 广河县| 临安市| 昭通市| 凤阳县| 隆昌县| 马龙县| 临城县| 体育| 盘锦市| 淮北市| 云和县| 盘山县| 札达县| 威信县| 论坛| 平安县| 德格县| 石首市| 绥宁县| 新沂市| 平顺县| 边坝县| 巴青县| 余干县| 隆尧县| 宁远县| 定兴县| 利津县| 达孜县| 广州市| 绥江县| 长阳| 扬中市| 大足县| 新营市| 梅河口市| 三亚市|