基於B/S架構的人機界面系統及工業控制器的製作方法
2023-12-11 19:05:32

本發明屬於應用於工業自動化領域的人機界面系統,具體涉及一種基於B/S架構的人機界面系統。
背景技術:
在工業自動化領域中,HMI(human machine interface)是一種常用設備,常常與工業控制器PLC、工業電腦以及相關工業專用設備等配合使用,作為用戶獲取設備信息、參數,並進行相關控制操作的接口單元。
傳統的HMI設備,主要有以下幾部分內容組成:1)顯示屏,包含觸摸和非觸摸;2)專用嵌入式控制板卡,在嵌入式板卡上運行專用圖形化用戶界面軟體和相關通訊協議;3)通訊接口。此外,傳統的HMI設備還需要提供二次開發工具,供客戶進行應用定製。在實際應用過程中,用戶首先使用二次開發工具開發配置自己的應用程式,如需要控制哪些參數,需要查看哪些參數,並編輯界面,完成之後生成相應格式的文件,並導入HMI設備之中,HMI上電之後,即讀取應用程式運行、顯示用戶編輯的界面,並通過通訊接口從主站設備獲取數據。帶有觸控螢幕的HMI可以實現相應的控制操作。
傳統的HMI設備的缺點主要有:1)通訊速率較慢,已經不適合高速工業產線;大量使用RS232\485接口作為通訊接口,使用的通訊協議也較為傳統,雖然保證了兼容性,但是犧牲了效率。目前已有部分廠家推出兼容工業乙太網的HMI,但是價格極高,且支持工業乙太網的設備較少,兼容性存在問題。2)HMI上的專用圖形化界面,使用專用嵌入式圖形平臺開發,僅提供有限的圖形元素,如按鈕,顯示框等,可定製程度低,界面美觀度不佳;而且HMI設備因為功能單一,出於成本的考慮選用的控制晶片性能較為有限,使得圖形開發的效率受影響,也更加加劇了整個系統的流暢度。3)HMI系統具備二次開發功能,允許用戶定製自己的界面及功能,但是,不同廠家使用不同的二次開發工具,開發模式相差甚遠,所提供的界面元素也不盡相同,在設備更換、升級時存在巨大的編程工作量。
由於工業系統的特殊性,目前客戶的人機界面需求只能通過HMI來實現,很多場合下因為一些特殊需求,只能去採購一臺價格不菲的HMI設備,使得總體成本急劇上升。因此,隨著智能化工業的發展,需要開發一款能解決上述問題的低成本人機界面解決方案。
技術實現要素:
本發明設計一種基於B/S架構的人機界面系統,在傳統的HMI之外,提供多樣化的、更靈活的解決方案,使得人機界面系統不再是一個單純的本地設備,而是一個可以遠程訪問和控制的系統;同時使得應用的開發可以使用標準的Web開發工具而無需專門的開發工具;此外,本發明還提出一種具有該功能的人機界面系統的工業控制器,可支持傳統工業用通訊接口及協議,以支持老舊的工業設備。
一種基於B/S架構的人機界面系統,包括本地設備及與之交互的外部設備,其特徵在於:本地端設備的控制器具有顯示模塊、網絡埠、通訊埠、以及作為服務端的WebServer單元和內嵌瀏覽器;顯示模塊用於實現本地端的界面顯示,網絡埠採用標準化的網絡接口以連接終端設備或網絡設備,通訊埠用於連接工業設備,WebServer單元用於數據的接收、轉換和發送,內嵌瀏覽器通過本地IP位址訪問WebServer單元;外部設備通過網絡埠連接至webserver單元,通過自帶的瀏覽器進行人機界面顯示。
進一步的,網絡埠內置用於實現標準乙太網的接入的網卡驅動,直接連接本地終端設備或通過支持標準乙太網的網絡設備連接遠程終端或移動終端設備。
進一步的,遠程終端或移動終端設備通過標準的乙太網網絡設備連接至網絡埠後對標準乙太網網絡設備進行配置,使終端設備和控制器處於相同的網段,以通過其自帶瀏覽器訪問本地設備。
進一步的,通訊埠內置通訊外設接口驅動和通訊網關,通訊外設接口驅動用於本地終端設備與外部工業設備的互聯,通訊網關用於解析和轉換收發的數據。
進一步的,顯示模塊內置顯示器驅動模塊和觸摸顯示屏,觸摸顯示屏顯示內嵌瀏覽器的內容,並將觸摸顯示屏的觸摸信號作為輸入信號反饋給瀏覽器。
進一步的,控制器還包括Web界面應用程式單元,用於提供下載、存儲和更新基於標準Web開發的界面應用程式的接口。
進一步的,web界面應用程式連接網絡埠後通過WebServer單元保存至Web界面應用程式單元。
進一步的,web界面應用程式通過標準RJ45接口連接至網絡埠。
進一步的,WebServer單元內嵌加密模塊,用於訪問WebServer單元時對連接通道加密。
本發明還公開一種工業控制器,採用具有上述特徵的人機界面系統進行人機互動。
本發明所公開的基於B/S架構的人機界面系統及工業控制器可解決傳統HMI設備使用所帶來的問題,所具有的有益效果具體如下:
1)採用標準的B/S架構,實現本地或遠程的訪問,即本地訪問無需聯網,通過本地訪問即可,遠程設備聯入同一個區域網或廣域網後可通過瀏覽器訪問。
2)基於B/S架構,工業控制器即可以在本地顯示人機界面,也提供其它聯網設備終端(平板電腦、PC、手機等)通過網絡訪問控制器並獲得人機界面功能,本地人機界面和通過網絡方式的人機界面完全一致,可以在windows作業系統下使用,也可以在linux、android、macos系統中使用,只要用標準的web瀏覽器即可實現人機界面的真正跨平臺,,而不再像大部分工業應用軟體一樣必須在windows作業系統下使用。
3)基於B/S架構,界面的內容本質上是標準Web開發,可以實現界面的標準化開發,不需要使用專用的二次開發工具,開發難度更低,開發更快速;可以自由的通過開發工具進行定製化的界面設計,沒有圖形元素的限制,任意設計,美觀性實用性俱增;用戶還可以自行使用高級語言(C++,Java、Python等)對人機界面系統進行編程,豐富其功能,使得人機界面系統更靈活,應用範圍更深入。
4)通過通訊埠和內嵌通訊網關,可以兼容通用工業設備,並將其數據轉換成乙太網數據進行傳輸;其中,基於乙太網的通訊方式,數據傳輸速率更高,提升設備整體運行效率,給用戶以較好的體驗,還可以方便企業信息化系統如ERP、MES、PLM等從人機界面系統中獲取設備數據,降低人工幹預需求。
5)基於B/S架構的人機界面系統可利用現有設備的常用硬體,實現多樣化的人機界面功能,如內嵌顯示屏、本地終端設備、可聯網的手機、Pad、電腦等。在某些需求較少但是非常必要的情況下,無需專用HMI設備即可多種交互方式,大大降低成本。
附圖說明
圖1是基於B/S架構的人機界面系統架構圖
圖2是基於B/S架構的人機界面系統框圖
圖3是基於B/S架構的工業控制器工作流程圖
具體實施方式
結合圖1和圖2所示,基於B/S架構的人機界面系統,包括本地設備及與之交互的外部設備,本地設備的控制器包括顯示模塊、網絡埠、通訊埠,及WebServer單元和內嵌瀏覽器;外部設備如工業設備、本地終端、網絡設備、遠程終端等。
其中,顯示模塊內置顯示器驅動模塊和觸摸顯示屏,將內嵌瀏覽器的內容顯示在觸摸顯示屏上,實現本地端的人機界面顯示功能;並能將觸摸顯示屏的觸摸信號作為輸入信號反饋給瀏覽器,實現人機界面的交互功能。
網絡埠採用標準化的網絡接口,通過內置的網卡驅動(如MAC接口驅動)實現標準乙太網接入功能,即可直接連接外部終端設備實現本地顯示,也可連接支持標準乙太網的網絡設備並通過網絡設備連接遠程終端或移動智能設備,實現遠程人機界面顯示,同時還可作為Web界面應用程式單元的下載接口。移動終端或遠程終端設備通過標準的乙太網網絡設備連接至網絡埠,並通過對標準乙太網網絡設備(路由器、交換機)進行配置,使終端設備和控制器處於相同的網段,即可通過其自帶瀏覽器訪問本地設備,從而實現遠程人機界面交互。其中,本地的終端設備,一般和機器在一塊,作為一個整體;本地終端和遠程終端設備主要包括有線連接的PC設備,也可以是web方式的HMI屏幕。在實際應用中,還可在控制器內設置加密模塊,對通道進行加密,使外部終端設備經加密模塊才能對WebServer單元進行訪問或控制。隨著移動互聯的發展,此處的終端設備可以是有線連接的PC機,也可以是採用無線連接的移動智能終端設備,如智慧型手機、平板電腦,對本地設備進行遠程控制,實現工業智能化管理。
通訊埠用於連接工業設備,內置通訊外設接口驅動和通訊網關,以實現控制器對工業設備的數據採集及控制。通訊外設接口驅動用於與外部工業設備互聯,如變頻器、伺服驅動器、工業相機、數字傳感器、讀碼器等,獲取外部設備的相關數據,並傳送相應的控制指令;工業設備往往遵循相關的工業通訊協議,常用的有ModBus、ProfiBus、CAN等,通訊網關一方面把外部設備的相關數據轉換成WebServer單元能夠處理的格式,另一方面要把WebServer單元的相關指令和數據轉換成外部設備可以接收的格式。
WebServer單元作為服務端,採用BS架構,負責將用戶二次開發的Web界面應用程式及控制器的相關數據(如控制器內部的狀態、運行過程中的寄存器數據、配置參數、從其它工業設備採集來的數據等)轉換成標準Web數據,以供內嵌瀏覽器訪問;同時,也將內嵌瀏覽器端傳遞的相關控制信號及應用程式,轉換成對應的格式,傳送給相關模塊。
內嵌瀏覽器是運行在控制器內部的標準瀏覽器程序,通過本地IP位址連接訪問WebServer,獲取Web界面內容。
控制器還包括本地的Web界面應用程式單元,以提供下載、存儲和更新基於標準Web開發的Web界面應用程式的接口。Web界面應用程式是由客戶利用標準Web開發工具開發,經過編譯後下載到控制器上進行存儲,包括具體的圖形界面、數據內容、控制內容及排版信息。運行時,WebServer單元會將Web界面應用程式完全讀入,並將相應的數據更新在相關區域,以供瀏覽器訪問。用戶二次開發的Web界面應用程式通過標準RJ45口,連接至MAC接口驅動,並通過WebServer單元保存至本地Web界面應用程式單元。
對於Web界面應用程式,用戶可以使用配置工具進行二次開發,也可以採取配置工具+高級語言(js java python等)或者完全採用高級語言自行獨立開發,無限制實現實際需求,集成各類高階功能。
在實際應用中,WebServer單元還可包括內嵌的加密模塊,用於訪問WebServer單元時對連接通道加密,尤其是通過B/S訪問WebServer單元時,WebServer單元可以對每一個連接通道進行加密,以保證傳輸數據和設備的保密性、安全性。加密模塊的研究已比較成熟,故可直接採用現有技術來實現,一般為SSH或VPN通道。
本實施例中,本地顯示方案既可以通過本地設備內嵌瀏覽器通過本地IP位址訪問WebServer單元,並通過自帶的觸摸顯示屏實現人機界面顯示;也可以通過連接網絡埠的終端設備實現。
此外,本發明還提出一種包括具有上述特點的人機界面系統的工業控制器。
結合圖3,基於上述結構的特點的工業控制器,其工作流程如下:
系統上電啟動運行作業系統,作業系統啟動瀏覽器線程和WebServer線程,兩路線程分別運行如下:
(1)瀏覽器線程:
step1-1:瀏覽器線程載入用戶編寫或配置的Web界面應用程式,其中包括了用戶交互界面等信息,之後等待網絡連接;
step1-2:瀏覽器程序連接工業控制器內部WebServer服務,同時分別運行Step1-3.1和Step1-3.2:
Step1-3.1:瀏覽器程序利用WebServer檢測外部輸入(外部輸入可以是觸控螢幕操作也可以是外部按鍵輸入),若有命令輸入,相應硬體開始執行,若無命令輸入,則繼續掃描輸入信號;
Step1-3.2:瀏覽器程序從WebServer中獲取數據,並將獲取到的數據和Web應用程式在瀏覽器界面進行顯示如果有結束命令,則結束程序;如果無結束命令則返回繼續獲取數據。
(2)WebServer線程:
Step2-1:WebServer初始化數據等待網絡連接;
Step2-2;網絡連接後分別運行Step2-3.1和Step2-3.2;
Step2-3.1數據更新,並判斷是否有結束命令,若有,運行結束,若無,則返回繼續連接更新;
Step2-3.2判斷是否有外部終端設備連接,若有,則進行數據交互,若無,則返回繼續進行連接判斷;並在數據交互後根據結束命令的指示選擇繼續交互或結束。
通過此方法,工業控制器即可以在本地顯示人機界面,也提供其它聯網設備終端(平板電腦、PC、手機等)通過網絡訪問控制器並獲得人機界面功能,本地人機界面和通過網絡方式的人機界面完全一致,僅僅是訪問設備不同,通過網絡訪問不需要增加額外的設備和編程開發,僅連接至本地的WebServer即可,實現人機界面的真正跨平臺;人機界面系統集成在控制器內部,形成一體化方案,可以大大節約成本,並且針對人機界面系統有不同需求的應用場景,提供多樣化解決途徑,方便用戶使用,提升用戶體驗;用戶為工業控制器開發的人機界面的應用程式-Web界面應用程式符合標準web規範,可以輕易的移植至別的設備及系統中;相應的,具備BS架構人機界面系統的工業控制器,因為其交互基於標準web變成,可以輕易的開放數據接口給信息化系統,靈活方便的進行數據交互。
以上所述實施例僅表達了本發明的部分實施方式,其描述並不能理解為對本發明專利範圍的限制。應當指出的是,對於本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干改進,這些均應落入本發明的保護範圍。