◆袁容 羅欽通訊作者 龍海軒 何雅萱 龍俊琪
?
基于Ardiuno的3D打印實驗室遠程監測系統的設計與實現
◆袁容1羅欽通訊作者1龍海軒2何雅萱1龍俊琪1
(1.湖南工業大學電氣與信息工程學院 湖南 412007;2.湖南工業大學計算機與通信學院 湖南 412007)
針對3D打印實驗室管理任務繁重,3D打印數據難以實時獲取的現狀,本文提出了3D打印實驗室的遠程監測系統的設計方案。本系統由遠程終端模塊(基于Arduino)、遠程通信模塊(采用ESP8266芯片)和Web應用模塊組成。本系統經由路由器可對實驗室的機器打印進度、機內熱床以及噴頭溫度進行實時監測與反饋。系統經調查與實驗表明,該系統實時性強,便于學生使用與教師管理,能夠有效提高實驗室的管理效率。
3D打印機;實驗室遠程監測;ESP8266;Web
隨著科技的迅速發展,遠程監測技術正在逐漸被人們所認知和重視。目前國內市場3D打印機尚缺乏較成熟且易于推廣的遠程監測系統,所建設的3D打印實驗室大多以單機版打印機進行教學,實驗室管理員難以及時發現打印機出現的故障,且學生實驗方式較單一。針對以上問題,本論文提出的3D打印實驗室遠程監測系統,能夠滿足實驗室管理員和實驗者的不同需求,為3D打印實驗室提供人性化、開放性的管理方式。
3D打印實驗室遠程監測系統通過登錄實驗室監測網頁,遠程獲取3D打印機的設備數據。本系統的總體框架設計分為遠程終端模塊、遠程通信模塊和Web應用模塊三大模塊,總體框架如圖1所示(注:該3D打印機使用Arduino mega 2560主控板燒配Marlin固件,搭載RAMPS1.4拓展板作為核心部件)。

圖1 系統總體框架圖
遠程終端模塊對應實驗室Prusa i3結構3D打印機。每臺3D打印機均配置ESP8266WIFI模塊,實現3D打印機無線遠程通信的功能。
遠程通信模塊所采用的ESP8266是一個能夠搭載軟件應用,實現WIFI網絡功能嵌入的芯片。其可添加到任何基于微控制器的設備中,通過簡單的串口連接便可通過SPI/SDIO接口或者中央處理器AHB實現通信。
Web 應用模塊由Web 服務器和數據庫服務器組成,實現對實驗室數據的存儲和處理及數據反饋與報告管理的功能。本網頁采用目前最流行的J2EE技術,使用spring boot框架結構進行開發,使用html、Javascript與css設計網頁內容,并采用velocity渲染模板將java代碼從web頁面中分離出來,且系統數據庫選擇穩定高效的 My SQL 數據庫來組織、存儲和管理數據。
(1)遠程終端模塊
Arduino Mega 2560是基于ATmega2560的微控制板,有54路數字輸入/輸出端口,16路模擬輸入端口,4路UART串口,16MHz的晶振,USB連接口,電池接口,ICSP頭和復位按鈕,適合作為實驗室3D打印機主板。其上傳Marlin固件才可以使用,通過配置固件通信波特率,控制板類型,擠出頭個數,溫度傳感器類型等函數,從而實現主板的控制功能。使用RAMPS擴展板提供擴展接口,并連接Arduino MEGA平臺時,就擁有充足的擴展空間。
(2)遠程通信模塊
無線WIFI模塊與3D打印機作為STA終端,連接到局域網中的路由器上,通過路由器與服務器進行數據交互,組成一個無線網絡。
本模塊選用的是以ESP8266為主控芯片的WiFi模塊。WiFi模塊具有高效的AT指令,且其價格低廉、開發簡單。該芯片具有一個自成體系的WiFi網絡解決方案,其高度片內集成,包括前端模塊在內的整個電路所占PCB空間非常小,可將用戶的物理設備連接到WiFi無線網絡上,進行互聯網或局域網通信。
WiFi模塊采用UART和控制器進行通信。使用STM32搭載ESP8266進行設置,STM32通過串口TX發送AT指令對WiFi的工作模式、UART波特率、建立連接等相關參數進行設置。STM32的UART接收端口RX則接收WiFi模塊從移動端接收到數據和指令。設置成功后將芯片與終端連接,當移動端和3D打印終端建立無線連接后,就可以實現數據雙向通信了。將ESP8266與3D打印連接完畢以后,進行ESP8266固件編程與燒寫,最后使用AT指令設置模塊。
(3)Web應用模塊
本模塊開發的框架,將系統的開發任務分為表現層和業務邏輯層以及數據訪問層。第三層的功能是對數據庫數據進行各種基礎操作,并為業務邏輯層或表示層提供數據服務。而第二層則是在數據訪問層的基礎之上,把數據層的一些操作進行組合,對數據進行業務邏輯處理。第一層主要表示為Web方式,用于顯示數據和接收用戶輸入的數據,實現用戶與網絡管理系統的交互。
本系統通過Web應用模塊實現網頁的開發與設計,支持管理員與普通用戶實現系統應用層操作,對實驗室內3D打印機實施指令,并通過遠程通信模塊進行TCP/UDP數據傳輸,將指令傳達于終端,進行實際工作。本系統旨在為管理員(老師)與普通用戶(學生)提供便捷與服務。管理員擁有最高權限,可進行系統的所有操作,功能如圖2所示。普通用戶只擁有部分權限,且可由管理員分配信息和設置權限,功能如圖3所示。

圖2 管理員系統功能模塊圖

圖3 普通用戶系統功能模塊圖
(1)管理員(老師)模塊
①登錄模塊中,管理員通過賬號和對應的密碼進行登錄。
②上傳模塊中,管理員可上傳文檔和實驗報告的分數。
③查看/修改模塊中,管理員可查看任意用戶上傳的信息,增加或刪除某用戶的操作權限。
④監測模塊中,管理員可添加對應3D打印機設備號,實時監測打印機情況。
(2)普通用戶(學生)模塊
①登錄模塊中,普通用戶通過用戶名(如學號)和對應的密碼登錄網頁。
②預約模塊中,普通用戶可進行實驗預約,系統將其所提交的預約信息自動發送至管理員郵箱等待管理員查收。
③上傳模塊中,普通用戶可將已完成的實驗報告進行上傳。
測試管理員功能,001號3D打印機進入待機狀態,接入室內無線網,選擇打印模型一號。以管理員身份登錄網頁,選擇監測001號3D打印機工作狀態,網頁接收工作狀態信息如表1。

表1 打印機工作狀態信息表
打開3D打印LCD屏,進入信息欄目,對比數據無誤,終端功能實現正常。
將ESP8266正常接線上電,使用USR-TCP232-Test軟件,以建立TCP連接為例進行芯片功能測試:
(1)創建服務器;
(2)開啟多連接模式;
(3)建立TCP連接;
發送命令AT+CIPSTART=2,"TCP","192.168.1.109",8080,軟件界面顯示OK Linked,建立連接成功。
(4)測試與服務器之間數據傳輸。
發送命令AT+CIPSEND=2,10后接收串口數據,當數據長度滿length時發送數據。電腦顯示數據發送成功,返回SEND OK。此時連接已建立,可以進行數據的雙向收發。證明該ESP8266芯片工作正常。

表2 丟包率測試
由表2和圖4可見,本系統的丟包率隨著發送數據包個數的逐步增加,其大小開始上升,證明Web模塊工作正常。

圖4 丟包率測試圖
相比傳統的實驗室模式,本文闡述的實驗室遠程監測系統具有操作方便、信息實時更新、設備動態管理以及系統維護成本低的特點。其采用新興的3D打印機,結合及時性強的遠程通信,實現了對實驗室的實時、高效、低成本的數據監測,極大地提高了實驗室工作的效率。
[1]周旋,諶建飛,趙丹等.基于ZigBee的實驗室遠程監測系統設計[J].中國教育信息化,2017.
[2]馬健.基于Web的設備遠程監控系統的設計與實現[D].中北大學,2016.
[3]卜曉曉.基于Android和Wi-Fi的智能家居系統的設計與實現[D].江蘇大學,2016.
[4]張宏強.基于嵌入式Web遠程監控系統的研究與實現[D].西安科技大學,2015.
[5]李松濤,周成虎.基于WSN的實驗室環境遠程監測系統[J].工業控制計算機,2014.
[6]楊威,高文華.Linux平臺智能家居的本地監控與遠程監控[J].單片機與嵌入式系統應用,2013.
湖南工業大學校級研究性學習與創新性實驗項目“面向3D打印的實驗室智能遠程管理系統的研發”。