基于wifi的無(wú)線(xiàn)3D打印機控制器設計
摘要:3D打印技術(shù)近幾年發(fā)展迅速,已經(jīng)廣泛應用于航天、國防、醫療設備及教育等領(lǐng)域。針對目前3D打印機主要是采用有線(xiàn)方式打印,需要電腦等設備,不方便攜帶,本文設計一種基于wifi的無(wú)線(xiàn)3D打印機,可以直接脫離電腦,實(shí)現移動(dòng)設備無(wú)線(xiàn)控制進(jìn)行打印,為用戶(hù)提供了便利。
本文引用地址:http://dyxdggzs.com/article/201610/306867.htm3D打印屬于快速成形技術(shù)的一種,是以數字模型文件為基礎,運用塑料或粉末狀金屬等材料,通過(guò)逐層打印的方式來(lái)構造物體。近幾年3D打印技術(shù)飛速發(fā)展,已廣泛應用于航天、國防、醫療設備、教育及制造業(yè)。但目前的3D打印機大部分依然采用電腦連接進(jìn)行操作打印,或者采用SD卡存儲打印產(chǎn)品的數據進(jìn)行打印,有時(shí)為用戶(hù)使用帶來(lái)極大不便。手機、平板電腦等移動(dòng)設備終端已經(jīng)成為了人們的生活必備品,這些產(chǎn)品都帶有wifi無(wú)線(xiàn)傳輸功能。本文設計一種可以利用手機、平板等移動(dòng)端安裝app應用軟件實(shí)現移動(dòng)設備wifi無(wú)線(xiàn)控制3D打印機進(jìn)行打印的控制器。通過(guò)移動(dòng)端app軟件進(jìn)行打印對象的選擇、傳輸及打印控制。有了wifi操作,3D打印機就不局限于在電腦上操作,方便了用戶(hù)使用,節省了使用成本。本文重點(diǎn)闡述無(wú)線(xiàn)式3D打印機控制器和上位機APP應用界面的設計。
1 無(wú)線(xiàn)式3D打印機控制器設計方案
控制器的核心CPU選用ST公司的STM32F103VET6微控制器,控制系統主要完成接收WiFi模塊傳輸的數據;讀取SD卡內存放的3D模型數據文件;完成對步進(jìn)電機的控制;擠出頭和熱床的溫度控制;擠出頭行程控制等。無(wú)線(xiàn)式3D打印機的控制系統總體框圖如圖1所示。
如圖1所示,手機端的控制軟件代替了電腦,通過(guò)手機上的wifi將打印數據和命令傳輸到3D打印機控制器進(jìn)行打印控制,3D打印機控制器也會(huì )將擠出頭及熱床溫度、打印機當前狀態(tài)等信息傳輸到手機端進(jìn)行顯示,方便用戶(hù)查看。3D打印機控制器通過(guò)wifi模塊接收數據文件存儲到SD卡中,打印數據存儲完成后,當控制器接收到打印命令后就可以開(kāi)始打印了。兩路溫度傳感器經(jīng)CPU片內A/D轉換通道分別檢測擠出頭和熱床的溫度;CPU的兩路數字信號輸出分別控制擠出頭和熱床加熱電路的NMOS功率開(kāi)關(guān)管,結合溫度傳感器實(shí)現擠出頭和熱床溫度的控制;四路步進(jìn)電機驅動(dòng)電路分別控制X、Y、Z這3個(gè)軸的步進(jìn)電機以及擠出頭的步進(jìn)電機;三路行程開(kāi)關(guān)定位X、Y、Z軸的原點(diǎn)和運動(dòng)相對位移量。
2 系統硬件電路設計
2.1 wifi通信電路設計
本設計中選用的是ESP8266為主控芯片的wifi模塊。ESP8266的wifi模塊具有接口簡(jiǎn)單、價(jià)格低廉、高效的AT指令,開(kāi)發(fā)更簡(jiǎn)單等特點(diǎn)。ESP8266芯片具有一個(gè)完整且自成體系的wifi網(wǎng)絡(luò )解決方案,高度片內集成,包括天線(xiàn)開(kāi)關(guān)、電源管理轉換器,因此只需要極少的外部電路,且包括前端模塊在內的整個(gè)電路所占PCB空間非常小,專(zhuān)為移動(dòng)設備和物聯(lián)網(wǎng)應用設計,可將用戶(hù)的物理設備連接到wifi無(wú)線(xiàn)網(wǎng)絡(luò )上,進(jìn)行互聯(lián)網(wǎng)或局域網(wǎng)通信。WiFi模塊采用UART和控制器進(jìn)行通信。STM32通過(guò)串口TX發(fā)送AT指令對wifi的工作模式、UART波特率、建立連接等相關(guān)參數進(jìn)行設置。STM32的USART接收端口RX則接收wifi模塊從移動(dòng)端接收到數據和指令。這樣,當移動(dòng)端和3D打印終端建立無(wú)線(xiàn)連接后,就可以實(shí)現數據雙向通信了。
2.2 步進(jìn)電機驅動(dòng)電路設計
對于小型打印機一般采用兩相四線(xiàn)42系列的步進(jìn)電機。STM32控制步進(jìn)電機要借助于電機驅動(dòng)電路,在3D打印機中一般采用A4988芯片作為步進(jìn)電機驅動(dòng),但A4988芯片最大只有16細分,輸出最大電流為2A。而TI公司的DRV8825步進(jìn)電機驅動(dòng)芯片最高可以達到32細分,驅動(dòng)電流可以輸出 2.5A,低至0.2歐的導通電阻,保證了芯片良好的散熱性等優(yōu)勢。另外芯片還集成了快速響應的短路、過(guò)熱、欠壓及交叉傳導保護功能電路,能夠檢測故障狀況,并迅速切斷H橋,從而為電機和驅動(dòng)芯片提供保護。本設計選擇DEV8825作為步進(jìn)電機驅動(dòng)芯片。圖2為步進(jìn)電機驅動(dòng)電路和加熱及溫度檢測電路與 STM32的接口。圖2中P1為兩相四線(xiàn)步進(jìn)電機和DRV8825驅動(dòng)電路的接口,芯片的STEP步進(jìn)和DIR方向控制管腳連接到STM32的PC0和 PC1管腳進(jìn)行控制。本設計中在驅動(dòng)電路硬件設計時(shí)已經(jīng)將細分設置為1/32,休眠、復位等都失能,這樣可以節省STM32的GPIO端口,如果控制器芯片管腳夠用,可以通過(guò)程序控制這些管腳進(jìn)行更多功能的步進(jìn)電機控制。
2.3 擠出頭溫度檢測及加熱電路設計
3D打印過(guò)程中擠出頭和熱床都需要保持相對恒定的溫度,如果采用的是PLA打印材料一般將擠出頭加熱溫度設置為175-200度,熱床溫度設置為40-60度。電路中溫度檢測采用MAX6675數字溫度轉換芯片將熱敏電阻的溫度轉換為數字量由STM32讀出。擠出頭和熱床溫度可根據具體使用環(huán)境確定實(shí)際溫度值,擠出頭和熱床溫度檢測和加熱電路是相同的,這里以擠出頭溫度檢測和加熱電路說(shuō)明其加熱原理,電路如圖2所示。
JP27為加熱管的接線(xiàn)端子,連接直流發(fā)熱芯,R41和D13組成指示燈電路,MOS管Q3導通時(shí),指示燈D13亮,發(fā)熱芯加熱。U4為熱敏電阻溫度轉換芯片,轉換完成的溫度數字量通過(guò)STM32的3個(gè)管腳根據MAX6675操作時(shí)序讀出。STM32將讀出的溫度值和設定的溫度值進(jìn)行比較,形成反饋,采用 PID算法實(shí)現溫度的恒定。
3 系統軟件設計
3.1 手機端APP軟件設計
移動(dòng)端的應用程序主要實(shí)現3D打印文件的選擇、確認、3D打印機狀態(tài)顯示以及wifi的連接等。應用程序采用Android編程,實(shí)現打印數據文件的讀取,并控制wifi進(jìn)行數據的傳輸,還能夠設置3D打印機的打印頭溫度、熱床溫度,并且可以接收打印頭和熱床溫度進(jìn)行顯示,以及所用材料類(lèi)型及使用量信息進(jìn)行顯示。移動(dòng)端應用程序主要頁(yè)面設計如圖3所示。
首先在應用程序首頁(yè)選擇要打印的STL文件,進(jìn)入下一界面進(jìn)行預覽,預覽確認后可以啟動(dòng)打印,在打印界面可以選擇暫停,并能夠顯示當前打印機的速度、熱床和擠出頭溫度等信息。
3. 2 主程序流程圖
軟件程序具有通信、數字信號的控制和數據讀取與處理等功能,根據設計要求,軟件程序流程圖設計如圖4所示:
首先,3D打印機終端對wifi、電機及加熱等模塊初始化完成后,開(kāi)始等待移動(dòng)端發(fā)出的打印命令。一旦移動(dòng)端發(fā)出打印命令,接收端接收到命令后,開(kāi)始接收數據,為節省時(shí)間,在接收打印數據的同時(shí),對擠壓頭及熱床進(jìn)行預熱。當檢測到數據接收完成,溫度等達到預設值后,啟動(dòng)打印,并將打印速率、擠壓頭及熱床溫度等信息實(shí)時(shí)回傳到手機的應用軟件上進(jìn)行顯示,直到打印完成。
4 結束語(yǔ)
隨著(zhù)3D打印機和手機、平板電腦等移動(dòng)終端的普及,采用移動(dòng)終端對3D打印機進(jìn)行控制是未來(lái)3D打印機的發(fā)展方向。本文就實(shí)現3D打印機的無(wú)線(xiàn)打印,給出了具體實(shí)現原理及程序流程,采用STM32微控制器提高了處理速度,加熱電路通過(guò)PID調節,保證了溫度恒定,減少了斷絲、粗細不均現象,提高了打印質(zhì)量。經(jīng)實(shí)際驗證,能夠實(shí)現手機等移動(dòng)終端對3D打印機的控制,并且本設計提高了打印質(zhì)量。無(wú)線(xiàn)打印,為用戶(hù)使用3D打印機提供了方便。
評論