7]本發(fā)明實施例提供的3D打印機的控制系統(tǒng),采用上位機控制端11接收用戶輸入的觸擊指令,并將觸擊指令轉換成對應的操作碼,并根據(jù)操作碼生成控制指令,并將控制指令通過無線網(wǎng)絡發(fā)送至中樞控制器12,控制指令用于控制中樞控制器12工作;通過中樞控制器12接收上位機控制端11發(fā)送的控制指令,并對控制指令進行解析,生成對應的控制碼,并將控制碼發(fā)送至3D打印機的主控板13,以便主控板控制3D打印機工作;
[0038]與現(xiàn)有技術中的3D打印機控制系統(tǒng)中,電腦和主控板需要時刻連接,當將電腦需要切換到其他控制系統(tǒng)時,在切換的過程中需要斷開3D打印機,故使得3D打印機不能正常工作,實時性較差的方案相比,其使中樞控制器12采用有線或無線的方式連接3D打印機的控制板,通過上位機控制端11 (如瀏覽器或者Android平板App)啟動控制軟件,控制3D打印機完成以下任務,如文件打印與管理、溫度設置與監(jiān)控、機器調試、日志管理等工作,其中,本發(fā)明可以由多個上位機控制端11同時連接3D打印機,從而可以實現(xiàn)多個上位機控制端11之間切換,并且在切換的過程中,不影響3D打印機的正常工作,實時性較好。
[0039]本實施例中的上位機控制端11可以是智能手機或者平板電腦;本實施例中均以智能手機為例進行說明,該智能手機上預裝有瀏覽器或者Android平板App,并通過瀏覽器或者Android平板App啟動控制軟件,從而控制3D打印機完成下述工作任務:文件打印與管理、溫度設置與監(jiān)控、機器調試、日志管理等工作。
[0040]具體的,本實施例中的3D打印機為專用3DTalk打印機。由于3D打印機通常需要工作很長的時間,一般均是20小時以上,所以3D打印機在打印的過程中可能存在異常,如導致打印失敗等,并且,3D打印機的有些問題是無法通過硬件檢測完成的,必須由操作人來判定,比如打印的質量好壞等,所以3D打印機在無人值守的情況下,也需要工作人員時刻定時檢測其工作情況;而本發(fā)明則可以通過中樞控制器12連接3D打印機的控制板,在上位機控制端11 (即智能終端)連接中樞控制器12,本發(fā)明還具有擴展能力,比如攝像,傳感檢測等,讓操作人可以通過智能終端隨時隨地的關注3D打印機的打印情況,便于及時發(fā)現(xiàn)D打印機在答應過程中遇到的問題,減少損失。
[0041]更具體的,本實施例中的上位機控制端11可以為平板電腦,本實施例中推薦使用Android4.2系統(tǒng)的平板電腦,使用該平板電腦的好處是,價格實惠,其價格在1000元左右,并且具有四核以上CPU (Central Processing Unit,中央處理器),且支持HTML5 (其中,HTML為萬維網(wǎng)的核心語言、標準通用標記語言下的一個應用超文本標記語言。
[0042]本實施例中的上位機控制端11可以為PC,該PC支持HTML5瀏覽器的個人PC,推薦使用火狐最新版本瀏覽器。而在PC端設置有3D建模軟件,如AutoCAD 3DsMax等;切片軟件,如Cura slic3r等;控制軟件,如Octoprint (瀏覽器前端)等。
[0043]而中樞控制器12即嵌入式端,其具體的處理部分即Octoprint (服務端),實際上,Octoprint是一款完全基于網(wǎng)頁的“主機”程序,可以通過這個“主機”程序的軟件遠程控制3D打印機,其上還可以預先設置的網(wǎng)絡攝像頭監(jiān)控3D打印機,用戶可以通過上位機控制端11隨時控制3D打印機暫停和恢復打印等,另外,該“主機”程序還包括設定模塊,該設定模塊,用于設定固定時間,讓3D打印機按照特定的頻率抓拍3D打印機工作時的照片。
[0044]而,Octoprint利用Python語言(Python語言是一種面向對象、解釋型計算機程序設計語言)支持的Flask開源框架搭構建Web服務器作為后臺服務提供者,以Html5、CSS(CSS為級聯(lián)樣式表,其是一種用來表現(xiàn)HTML(標準通用標記語言的一個應用)或XML(標準通用標記語言的一個子集)等文件樣式的計算機語言。)、Javascript、Ajax等前端技術完成界面繪制以及數(shù)據(jù)交互,使用Uart通信技術完成與3D打印機的主控板13 (該3D打印機的主控板13可以是Arduino單片機,也可以是Arduino控制器)之間的通信。
[0045]圖2示出了本發(fā)明實施例所提供的一種3D打印機的控制系統(tǒng)的硬件系統(tǒng)機構的原理圖;圖3示出了本發(fā)明實施例所提供的一種3D打印機的控制系統(tǒng)的軟件系統(tǒng)結構的原理圖。如圖2和圖3所示,
[0046]3D打印機的主控板13,硬件使用兼容設計,軟件使用Arduino平臺搭建,優(yōu)點是加速開發(fā)速度,并且易于擴展。并且,該3D打印機的主控板13支持標準的G-code協(xié)議,同時擴展自有的指令集M-code。工作原理:其通過USB轉串口連接到中樞控制器12,接收到中樞控制器12發(fā)送的G-code代碼,并對該G-code代碼進行解析,得到控制信號,并將控制信號對應的發(fā)送至指定的開關模塊和步進電機等模塊,使開關模塊和步進電機等模塊等完成其自身對應的動作;控制信號的作用主要包括:步進電機移動、溫度控制以及1信號的輸出與讀取。
[0047]3D打印機的主控板13的硬件采用Atmega2560為核心,Arduino Mega2560是采用USB接口的核心電路板,具有54路數(shù)字輸入輸出,適合需要大量1接口的設計,外圍擴展開關管,usb轉串口通信模塊、DC-DC模塊、溫度檢測模塊等,支持5路步進電機的控制。
[0048]進一步的,該3D打印機的控制系統(tǒng)中,中樞控制器12,用于根據(jù)預設核實標準對存儲的預執(zhí)行任務進行檢查,在檢查結果符合標準時,根據(jù)預執(zhí)行任務生成對應的控制指令,并將工作指令發(fā)送至3D打印機的主控板13,以便主控板控制3D打印機工作;其中,控制指令用于控制包括:電機移動、溫度控制以及1信號的輸出與讀取。
[0049]具體的,中樞控制器12的包括本地設備和Python服務器,其中,本地設備中預先存儲有打印文件,然后在接收到控制指令時,從本地設備中提取與控制指令對應的預執(zhí)行任務(該預執(zhí)行任務是打印文件的一部分或全部),其中,中樞控制器12中預先存儲的預設核實標準可以是完整的打印文件,并在完整的打印文件中檢測預執(zhí)行任務中的打印文件是否完整等;在檢查結果符合標準時,則開始打印模型時,讀取打印文件并通過串口發(fā)送到3D打印機的主控板13。
[0050]具體的,終端用戶的動作首先被前端界面接收,先經(jīng)由Jsp(Java Server Pages,java服務器頁面)解釋器將控制指令進行解析,并根據(jù)解析的結果生成對應的操作碼,再通過后臺Python服務端將該操作碼發(fā)送到3D打印機的主控板13。采用PyQtn編程語言完成本地界面繪制,并通過Http (HTTP-Hypertext transfer protocol),超文本傳送協(xié)議)協(xié)議(Tcp通信、P0ST、GET)完成與Python后臺的服務通信,從而完成整個控制及數(shù)據(jù)通信功能;其中,POST和GET是網(wǎng)頁數(shù)據(jù)向服務器提交的兩種方式;P0ST方法用來向目的服務器發(fā)出請求,要求它接受被附在請求后的實體,并把它當作請求隊列(Request-Line)中請求URI所指定資源的附加新子項;GET方法就是以實體方式得到由請求URI所指定資源的信息。
[0051]Linux系統(tǒng)軟件(無線網(wǎng)卡端):整個系統(tǒng)可采用:Samba (Samba是在Linux和UNIX系統(tǒng)上實現(xiàn)SMB協(xié)議的一個免費軟件,由服務器及客戶端程序構成)、安全外殼協(xié)議Ssh、串口進行遠程或本地控制與機器調試;無線熱點:采用開源工程:Hosapd、Udhcpd完成無線熱點部署;軟件更新:采用Nginx開源工程搭建Web服務器,平板通過掃描給出的二維碼完成客戶端下載和更新。
[0052]進一步的,該3D打印機的控制系統(tǒng)還包括液晶顯示器IXD14 ;
[0053]IXD14與中樞控制器12電連接,用于顯示3D打印機的工作菜單以及接收用戶的選擇指令,并將選擇指令發(fā)送至中樞控制器12 ;選擇指令用于從工作菜單中選擇預執(zhí)行任務。
[0054]中樞控制器12,用于接收選擇指令,并選擇選擇指令對應的預執(zhí)行任務,并根據(jù)預執(zhí)行任務生成控制指令,并將控制指令發(fā)送至3D打印機的主控板13,以便主控板控制3D打印機根據(jù)控制指令進行工作。
[0055]其中,在中樞控制器12上設置IXD14 (Liquid Crystal Display,液晶顯示器),可以通過該IXD14顯示3D打印機的打印任務,并通過無線網(wǎng)絡發(fā)送至用戶的上位機控制端11,以便用戶能夠看到該打印任務,用以供用戶選擇,用戶可以在該上位機控制端11上選擇相應的打印任務,并上位機控制端11向中樞控制器12發(fā)送控制指令,在由中樞控制器12將該控制指令解析并發(fā)送至3D打印機的主控板13,以便該3D打印機控制打印機進行打印工作。
[0056]本實施例中,IXD14可以使用4.3寸IXD14液晶屏,采用SPI接口,封裝為Framebuffer設備(是用一個視頻輸出設備從包含完整的幀數(shù)據(jù)的一個內存緩沖區(qū)中來驅動一個視頻顯示設備。),采用開源工程:Fbtft ;具體使用RA8875型號的驅動板,而該IXD14