萬偉康,趙康,王文博,陳衛峰,鄧小穎
(揚州大學 物理科學與技術學院,揚州 225002)
?
萬偉康,趙康,王文博,陳衛峰,鄧小穎
(揚州大學 物理科學與技術學院,揚州 225002)
摘要:近年來,3D打印技術在國內外興起,應用范圍不斷拓展,然而國內對于3D打印技術的應用開發以及服務提供還是遠遠不夠的,為此提出了3D打印人性化控制界面開發(無線控制監測終端)、藍牙短距離協議接入、Internet遠程控制以及云服務平臺搭建的解決方案,應用于教育教學或者產品展示,以及3D打印云平臺的建設方面。經過實際運行,平臺取得了較好的效果。
關鍵詞:物聯網;3D打印;遠程控制;智能化平臺;云服務
引言
由于受現有技術條件的限制,一般的3D打印機是由其自身的控制平臺控制,界面單一、按鍵操控有很大的局限性。盡管通過端口連接電腦可以實現電腦控制打印機,但作用也很有限。當3D打印機遇上物聯網后,其巨大的潛力就體現出來了,可以實現無線控制打印、觸摸控制打印,甚至遠程控制打印。這是一種新的概念,將3D打印機面向智能化應用,以全新的方式實現3D打印機的智能控制,是本文研究的主要內容。
云服務在工業4.0時代發揮著重要的作用,同時也將給3D打印提供更多的創新點,打印模型的共享,甚至是3D打印硬件設備的共享,都將更好地促進3D打印走出實驗室,走進商業應用以及普通大眾的生活,使得3D打印從一種前沿技術轉化成為商業和生活服務。
本文利用LPC1857主控芯片將reprap 3D打印機與藍牙和觸摸屏以及以太網相融合,設計實現了3D打印的多種控制方式,同時為3D打印機搭建了集設備管理、遠程控制、用戶上傳、本地下載打印為一體的3D打印云服務平臺。這將帶來新的商業模式,同時在教育教學、產品展示等方面,具有廣闊的應用前景。
1系統方案
1.1系統設計
3D打印物聯網云服務平臺,使用LPC1857核心板進行開發,融合了reprap 3D打印主控(Arduino+Ramps方案),拓展了藍牙無線手持控制監測終端(LCD+BT),通過Linux網絡控制板(Openwrt)實現廣域網信息與文件管理,實現了3D打印人機交互界面的優化、無線控制(本地無線+廣域網遠程控制)的開發,并研究搭建了初級形態的3D打印云服務平臺(網頁控制+用戶管理+文件共享)。3D打印智能云平臺結構框圖如圖1所示。

圖1 3D打印智能云平臺結構框圖
應用平臺將實現以下功能:通過手持控制終端(藍牙無線協議與LCD顯示觸控技術)實現本地聯機打印控制與狀態監測,也可以通過Linux網絡控制器實現與遠程服務器的信息交互與打印文件管理;通過廣域網服務器提供網頁服務實現遠程打印控制與狀態監測,以及打印模型文件的上傳與下載;引入的藍牙協議同時也能支持更多的設備平臺以開發更多的3D打印應用。
1.2工作原理
本文搭建的3D打印機以及網絡服務智能平臺,硬件包括3個主要部分:3D打印控制器、網絡以及顯示觸控設備控制器、因特網服務器端。3D打印機物聯網系統采用了LPC1857單片機作為主要控制單元,結合reprap平臺的3D打印機硬件,基于TCP的HTTP協議、串口的HC-05藍牙模塊以及觸摸控制器,實現了3D打印機的物聯網功能,同時在云端使用了基于Apache的服務器,實現了數據處理以及網頁遠程控制、上傳、下載等功能。3D打印物聯網控制系統方案基本原理圖如圖2所示。

圖2 3D打印物聯網控制系統方案基本原理圖
2硬件部分
2.1硬件原理
2.1.1LPC1857控制芯片
LPC1857是基于ARM Cortex-M3[1]核的微控制器,包括200 KB的片上SRAM數據存儲器、1 MB的閃存(片上閃存的部分)、4個SPI閃存接口(SPIFI)、1個靜態可配置定時器(SCT)子系統、2個高速USB控制器、1個以太網接口、1個LCD接口、1個外部存儲控制器,以及多種模擬和數字外設。LPC1857硬件原理圖略——編者注。
2.1.2reprap 3D打印機
reprap是一個3D打印原型機,具有一定程度的自我復制能力,能夠打印出大部分其自身的(塑料)組件。reprap是(replicating rapid prototyper)的縮寫,本項目選用的Prusa i3打印機是基于reprap進行二次改進的版本,在提升打印速度的同時提高了打印精度和穩定性。
2.1.3HC-05
藍牙模塊HC-05是一款高性能的藍牙串口模塊,具有以下特點:可用于各種帶藍牙功能的電腦、藍牙主機、手機、PDA、PSP等智能終端配對;波特率范圍為4 800~1 382 400 bps,并且模塊兼容單片機(微控制器)系統。
2.1.4LCD顯示及觸摸屏
LCD采用了武漢中顯科技的SDWI4827-043-NN28W VGUS串口屏,簡便的配置方法,以及便捷的界面設計大大地簡化了整個系統的開發過程。藍牙協議的拓展(HC-05)以及鋰電池的加入使得該串口終端實現了無線控制功能。觸摸屏硬件原理圖如圖3所示。

圖3 觸摸屏硬件原理圖
2.2原理框圖
3D打印物聯網平臺硬件框圖如圖4所示。

圖4 3D打印物聯網平臺硬件框圖
3軟件部分
3.1軟件原理
3.1.1LPC1857
單片機的編程環境是IAR,支持眾多知名半導體公司的微控制器,許多全球著名的公司都在使用IAR SYSTEMS提供的開發工具,LPC1857芯片是以ARM為內核的,所以用IAR for ARM版本就可以開發相應的工程。
初始化包括:系統初始化、串口中斷初始化、觸摸屏初始化、顯示狀態界面、開啟定時器和消息處理主循環等。
3.1.2消息隊列
3D物聯網打印機主控平臺的軟件設計移植了一個簡單的循環消息隊列系統,優點如下:①簡化了嵌入式系統的編程思路,提高了系統搭建效率;②提高了嵌入式系統的消息處理效率,避免了大量的代碼冗余;③采用了環形隊列(FIFO),解決了消息丟失以及大量消息阻塞的問題。
3.1.3串口通信及中斷
本系統使用了3個串口,串口接收和發送使用了FIFO環形緩沖區,有效避免了多串口多中斷的消息丟失。3個串口的功能如表1所列。

表1 3個串口的功能
3.1.4定時器函數
本系統中用到了定時器中斷,每隔一段時間進入定時器中斷服務函數,定時執行屏幕刷新以及打印機狀態獲取函數。
3.1.5打印機控制函數
系統將打印機的控制指令進行封裝,并且通過字符串指令解讀算法獲得打印機傳回的消息,集成的函數能夠更好地實現和打印機的信息交互。打印機主要功能有:開始打印、暫停打印、獲得打印機狀態、開始打印選定模型、打印機風扇控制、打印機警報控制(蜂鳴器)和打印機回傳指令解讀。
3.1.6服務器端網頁和php部分
(1) 服務器概況、架構及體系
服務器操作系統采用基于RHEL(Red Hat Enterprise Linux)內核的CentOS,安全穩定,并且有完善的網絡通信協議及算法,專門為提供Web服務進行了優化。Web服務器軟件采用Apache+php體系,簡單高效,能為用戶提供穩定的服務。
(2) 核心腳本文件的作用
data.php接收、處理并存儲單片機發送的數據,然后返回用戶控制狀態;index.html 可提供用戶直接訪問的網頁接口;view.php 處理網頁接口的表單和AJAX請求等數據;up.php 處理用戶上傳的文件。
(3) 數據的接收與處理
采用GET方式接收單片機發送的HTTP請求,使用正則表達式對字符串進行處理與過濾,然后使用獨立文件存儲腳本運行狀態及處理后的數據。另外,采用關鍵字作為驗證碼以識別數據發送者的合法性,檢測到無關設備發送的非法數據或發生錯誤時,能及時結束腳本運行并關閉連接,避免對服務器安全造成威脅,同時提高了服務器的穩定性。文件的上傳采用驗證方式,可安全地上傳并存儲G代碼文件。
(4) 數據的讀取與呈現
等待用戶請求,讀取文件并提取字符串,將其轉換為規定的文件名、百分比格式等數值。
(5) 用戶訪問接口頁面
采用AJAX方式實時與后端進行交互,及時獲取打印進度、正在打印文件等信息,并能夠及時將用戶控制指令發送給后端進行處理,然后發送給單片機進行控制、下載等動作。
3.2原理框圖
3D打印物聯網平臺軟件框圖如圖5所示。

圖5 3D打印物聯網平臺軟件框圖
4系統整體功能測試
將調試好的各個部件進行連接,進行整體功能測試,步驟如下:
① 接通設備電源,打印機開機,然后等待設備連接上互聯網。
② 用已連接互聯網的手機掃描二維碼(或在瀏覽器中輸入指定網址),進入打印機控制頁面。
③ 在頁面上選擇一個要打印的模型并開始打印,在網頁和單片機的屏幕上應能正確顯示打印進度,同時網頁可以控制打印的暫停或繼續。
④ 使用觸摸屏選擇一個文件打印,測試觸摸屏上的進度顯示及開始/暫停等交互是否正常。
⑤ 在手機上用藍牙連接設備,選擇文件并打印,測試手機端藍牙控制打印是否正常。
⑥ 通過任意一種控制途徑選擇模型打印,并在每個控制端同時進行打印控制與進度查看。
4.1測試設備
本方案的測試設備包括:reprap 3D打印機一臺,LPC1857開發板、STM32開發板及串口、藍牙、網絡擴展模塊各一套,開發與調試用電腦/智能手機一臺/部,用于連接互聯網的3G貓或路由器一部。
4.2測試數據
用于控制打印機的M代碼如表2所列。

表2 M代碼功能
測試所用的gcode模型代碼文件為01.gco-06.gco。向服務器發送的字符串(HTTP請求格式)為“GET /test/data.php?get=00s[兩位文件名代碼][四位百分比代碼]e00&key=[設備識別驗證碼] HTTP /1.1”。
服務器返回控制碼如表3所列。

表3 服務器返回控制碼功能
4.3結果分析
測試結果如下:
① 使用網頁、觸摸屏、手機藍牙串口App交替發送指令控制打印機;
② 觸摸屏與藍牙串口進行開始/暫停打印控制,響應正常;
③ 各個控制端能正常顯示打印進度并實時刷新;
④ 單片機向服務器發送的數據能被正常解析并存儲,在網頁上可以實時刷新打印進度和打印控制;
⑤ 同時單片機能接收到服務器返回的控制碼并作出正常響應,表明系統工作正常;
⑥ 服務器端用戶上傳G代碼文件,打印機可自動下載并打印。
實驗結論如表4所列。作品實物照片略——編者注。

表4 實驗結論
編者注:本文為期刊縮略版,全文見本刊網站www.mesnet.com.cn。
參考文獻
[1] 吳懷宇.3D打印:三維智能數字化創造[M].北京:電子工業出版社,2014.
[2] Luke Welling,Laura Thomson.PHP和MySQL Web開發[M].北京:機械工業出版社,2009.
[3] 劉火良,楊森.STM32庫開發實戰指南[M].北京:機械工業出版社,2013.
[4] 徐愛鈞.IAR EWARM V5嵌入式系統應用編程與開發[M].北京:北京航空航天大學出版社,2009.
[5] 趙海,陳長華,王建鋒.微控制器電路LCD 顯示原理[J].電子與封裝,2009,9(5):31-34.
[6] 張群,楊絮,張正言,等.藍牙模塊串口通信的設計與實現[J].實驗室研究與探索,2012(3):79-82.
[7] 劉思文.觸摸屏界面通用設計原則研究[D].上海:上海交通大學,2009.

Wan Weikang,Zhao Kang,Wang Wenbo,Chen Weifeng,Deng Xiaoying
(College of Physics Science and Technology,Yangzhou University,Yangzhou 225002,China)
Abstract:3D printing technology rises in China in the recent years,and the application scope is expanding.However,the application development of 3D printing technology and the services are not enough.So the development of 3D printing human control interface (wireless control monitoring terminal),Bluetooth protocol access,Internet remote control and the building of cloud services platform are proposed.The platform can be widely applied in teaching education,product dislpay and the construction of 3D printing cloud platform.The platform has achieved good results in the practical operation.
Key words:Internet of Things;3D printing;remote control;intelligent platform;cloud service
收稿日期:(責任編輯:薛士然2015-09-18)
中圖分類號:TP393
文獻標識碼:A
* 基金項目:揚州大學2015年國家級大學生創新創業訓練計劃項目(項目編號:201511117013);2015年江蘇省大學生創新創業訓練計劃項目(項目編號:201511117013Z)。