本發(fā)明涉及計算機系統及其配置方法,特別一種基于服務的機器人示教系統及方法。
背景技術:
機器人示教器又叫示教編程器是機器人控制系統的核心部件,是一個用來注冊和存儲機械運動或處理記憶的設備,該設備是由電子系統或計算機系統執(zhí)行的。
目前在市場中存在多種機器人示教器,其主要用于通過網絡技術實現機器人控制數據的采集和存儲。
現有技術中的機器人示教器主要是用于對機器人進行示教編程以及控制執(zhí)行等方面。目前示教器主要是將機器人信息模型進行展示,并負責對機器人控制指令的下發(fā)。目前機器人示教器中的數據傳輸主要是基于TCP/IP協議和Modbus協議等。通過網絡傳輸層的協議可以實現機器人示教器的被動訪問,基本上可以滿足用戶對于該功能的需求。
機器人示教器中運行的數據采集模塊和數據存儲模塊往往是需要預先指定并燒寫在機器人示教器,通過配套的控制器配置系統進行修改。而另一方面由于機器人示教器是基于網絡其應用環(huán)境為非實時數據采集,其配置維護需要制定專用通信協議,這就大大降低了機器人示教器使用的靈活性。另一方面由于機器人示教器中數據的存儲采用數據存儲模塊,因此數據的傳輸無法做到自發(fā)現自配置。
另外,隨著SOA的普及,硬件設備級的服務化已經成為趨勢,因此通過SOA技術中的自發(fā)現功能。在機器人示教器中添加Service可以使得硬件設備在網絡中可以具備自發(fā)現特性。另一方面基于服務的硬件設備可以通過標準服務接口與應用層直接對接。所以機器人示教器可以通過服務化的方法進行靈活配置,提出一種基于服務的機器人示教器可配置方法具有重大的意義。
技術實現要素:
本發(fā)明所要解決的技術問題在于,提供了一種基于服務的機器人示教系統及方法。本發(fā)明基于服務的機器人示教器的配置方法,能夠采用服務調用的方式進行機器人示教器配置。該套方法是基于SOA技術,在不影響機器人示教器原有功能的情況下,使用服務化的方式對機器人示教器進行配置。基于網絡技術,通過可自發(fā)現的服務化封裝可以實現示教器配置的簡單化,有利用用戶更好地讀取和配置機器人示教器。
為解決上述技術問題,本發(fā)明提供了一種基于服務的機器人示教系統,包括機器人示教器和機器人控制器;
所述機器人示教器進一步包括:功能按鍵、用戶界面、數據采集模塊、數據存儲模塊、服務封裝模塊、配置存儲模塊和配置模塊;
所述機器人控制器進一步包括:服務調用模塊。
所述數據采集模塊,優(yōu)選為用于將所述機器人控制器中數據根據與所述機器人示教器之間的通信協議,按照所述機器人示教器內部配置文件進行數據篩選并存在于所述數據存儲模塊中;
所述數據存儲模塊,優(yōu)選為用于將數據采集模塊發(fā)來的單組數據進行緩存,發(fā)送完整數據至所述服務封裝模塊;
所述配置存儲模塊,優(yōu)選為用于存儲機器人示教器初始化配置參數;通過所述服務發(fā)布模塊接收所述機器人控制器的示教器配置信息和數據模型;
所述服務封裝模塊,優(yōu)選為用于將數據存儲模塊的完整數據根據調用配置存儲模塊的數據模型進行服務化封裝形成原子服務,并發(fā)送至所述服務發(fā)布模塊;
所述配置模塊,優(yōu)選為用于監(jiān)聽配置存儲模塊中的示教器配置信息,當示教器配置信息變化時生成配置文件發(fā)送至數據采集模塊。
所述服務發(fā)布模塊,優(yōu)選為用于將原子服務列表注冊到所述機器人控制器,并接收所述機器人控制器的調用請求。
所述服務封裝模塊優(yōu)選為進一步包括:數據建模子模塊和服務定義子模塊;
所述數據建模子模塊,用于調用所述配置存儲模塊的數據模型,并根據服務協議生成服務模型;
所述服務定義子模塊,用于讀取所述數據存儲模塊的完整數據,并接收所述數據建模子模塊的服務模型定義原子服務。
所述配置模塊優(yōu)選為進一步包括:配置解析子模塊和配置重置子模塊;
所述配置解析子模塊,用于監(jiān)聽所述配置存儲模塊中的示教器配置信息;當示教器配置信息發(fā)生變化時,將示教器配置信息生成配置文件發(fā)送至所述配置重置子模塊;
所述配置重置子模塊,用于將配置文件發(fā)送至所述數據采集模塊,并重置所述機器人示教器。
為解決上述技術問題,本發(fā)明還提供了一種基于服務的機器人示教系統的配置方法,包括以下步驟:
數據采集模塊將機器人控制器中數據根據與機器人示教器之間的通信協議,按照機器人示教器內部配置文件進行數據篩選并存在于數據存儲模塊中;
數據存儲模塊將數據采集模塊發(fā)來的單組數據進行緩存,發(fā)送完整數據至服務封裝模塊;
配置存儲模塊存儲機器人示教器初始化配置參數;通過服務發(fā)布模塊接收機器人控制器的示教器配置信息和數據模型;
服務封裝模塊將數據存儲模塊的完整數據根據調用配置存儲模塊的數據模型進行服務化封裝形成原子服務,并發(fā)送至服務發(fā)布模塊;
配置模塊監(jiān)聽配置存儲模塊中的示教器配置信息,當示教器配置信息變化時生成配置文件發(fā)送至數據采集模塊;
服務發(fā)布模塊將原子服務列表注冊到機器人控制器,并接收機器人控制器的調用請求。
為解決上述技術問題,本發(fā)明又提供了一種如前述任一項所述基于服務的機器人示教系統的根據調用配置存儲模塊的數據模型進行服務化封裝形成原子服務的方法,包括以下步驟:
數據建模子模塊調用配置存儲模塊的數據模型根據服務協議生成服務模型;
服務定義子模塊讀取數據存儲模塊的完整數據,并接收數據建模子模塊的服務模型定義原子服務。
為解決上述技術問題,本發(fā)明還提供了一種如前述任一項所述基于服務的機器人示教系統的示教器配置信息變化時生成配置文件發(fā)送至數據采集模塊的方法,包括以下步驟:
配置解析子模塊監(jiān)聽配置存儲模塊中的示教器配置信息;
當示教器配置信息發(fā)生變化時,將示教器配置信息生成配置文件發(fā)送至配置重置子模塊;
配置重置子模塊將配置文件發(fā)送至數據采集模塊,并重置機器人示教器。
為解決上述技術問題,本發(fā)明再提供了一種服務化機器人示教器配置方法,包括以下步驟:
通過服務化封裝將機器人示教器具備的數據功能轉化為數據服務;
將機器人示教器的配置過程轉化為配置服務;
利用基于網絡的服務化封裝,將機器人示教器的應用場景進行進一步拓展。
為解決上述技術問題,本發(fā)明另提供了一種服務化機器人示教器配置方法,包括以下步驟:數據采集、服務封裝、服務發(fā)布和示教器配置;
所述數據采集步驟,包括通過功能按鍵、用戶界面和數據存儲模塊采集數據;
所述的功能按鍵,為機器人示教器上輔助按鍵,具備自定義功能;
所述的用戶界面,為機器人示教器內嵌應用模塊;
所述的數據存儲模塊,為通過Modbus協議將數據保存在機器人示教器中;
所述的服務封裝,包括數據建模子模塊和服務定義子模塊;
所述的數據建模子模塊是負責根據機器人示教器存放的數據結構建立服務所需要的數據模型;
所述的服務定義子模塊是在數據建模后根據數據模型對服務進行描述。
本發(fā)明產生的有益效果包括:
1、本發(fā)明通過對機器人示教器的服務化封裝,通過服務調用的方法來實現機器人示教器的基本功能。
2、同時提出了一種基于服務的機器人示教器配置方法,同時能夠使得配置功能可以通過網絡環(huán)境進行參數設定,進而形成一套基于服務的可配置,可讀寫的SOA級示教器。
3、基于服務的機器人示教器具備非實時數據交互能力,同時利用服務的安全機制,可以保證數據的安全性。
附圖說明
圖1為本發(fā)明實施例所述機器人示教系統原理框圖;
圖2為本發(fā)明實施例所述機器人示教系統的配置方法流程圖。
具體實施方式
為使本發(fā)明的目的、技術方案及優(yōu)點更加清楚、明確,以下參照附圖并舉實施例對本發(fā)明進一步詳細說明,但本發(fā)明并不局限于這些實施例。
本發(fā)明所稱SOA技術,是指面向服務的體系結構。SOA是一個組件模型,它將應用程序的不同功能單元(稱為服務)通過這些服務之間定義良好的接口和契約聯系起來。接口是采用中立的方式進行定義的,它獨立于實現服務的硬件平臺、操作系統和編程語言。這使得構建在各種這樣的系統中的服務可以以一種統一和通用的方式進行交互。
這種具有中立的接口定義(沒有強制綁定到特定的實現上)的特征稱為服務之間的松耦合。松耦合系統的好處有兩點,一點是它的靈活性,另一點是,當組成整個應用程序的每個服務的內部結構和實現逐漸地發(fā)生改變時,它能夠繼續(xù)存在。而另一方面,緊耦合意味著應用程序的不同組件之間的接口與其功能和結構是緊密相連的,因而當需要對部分或整個應用程序進行某種形式的更改時,它們就顯得非常脆弱。
對松耦合系統的需要來源于業(yè)務應用程序需要,根據業(yè)務的需要變得更加靈活,以適應不斷變化的環(huán)境,比如經常改變的政策、業(yè)務級別、業(yè)務重點、合作伙伴關系、行業(yè)地位以及其他與業(yè)務有關的因素,這些因素甚至會影響業(yè)務的性質。能夠靈活地適應環(huán)境變化的業(yè)務為按需業(yè)務,在按需業(yè)務中,一旦需要,就可以對完成或執(zhí)行任務的方式進行必要的更改。
本發(fā)明一實施例所采用的技術方案是:基于服務的機器人示教器可配置方法,包括以下步驟:
數據采集模塊將機器人控制器中數據根據與示教器之間的通信協議,按照示教器內部配置文件進行數據篩選并存在于數據存儲模塊中;
數據存儲模塊將數據采集模塊發(fā)來的單組數據進行緩存,發(fā)送完整數據至數據封裝模塊;
配置存儲模塊存儲機器人示教器初始化配置參數;通過服務發(fā)布模塊接收控制器的示教器配置信息和數據模型;
服務封裝模塊將數據存儲模塊的完整數據根據調用配置存儲模塊的數據模型進行服務化封裝形成原子服務,并發(fā)送至服務發(fā)布模塊;
服務發(fā)布模塊將原子服務列表注冊到控制器,并接收控制器的調用請求;
示教器配置模塊監(jiān)聽配置存儲模塊中的示教器配置信息,當示教器配置信息變化時生成配置文件發(fā)送至數據采集模塊。
所述數據存儲模塊的完成數據根據調用配置存儲模塊的數據模型進行服務化封裝形成原子服務包括以下步驟:
數據建模子模塊調用配置存儲模塊的數據模型根據服務協議生成服務模型;
服務定義子模塊讀取數據存儲模塊的完整數據,并接收數據建模子模塊的服務模型定義原子服務。
所述監(jiān)聽配置存儲模塊中的示教器配置信息,當示教器配置信息變化時生成配置文件發(fā)送至數據采集模塊包括以下步驟:
配置解析子模塊監(jiān)聽配置存儲模塊中的示教器配置信息;當示教器配置信息發(fā)生變化時,將示教器配置信息生成配置文件發(fā)送至配置重置子模塊;
配置重置子模塊將配置文件發(fā)送至數據采集模塊,并重置機器人示教器。
基于服務的機器人示教器可配置系統,包括:
數據采集模塊用于將數據源根據示教器配置模塊發(fā)來的配置文件進行數據篩選并存放到數據存儲模塊中;
數據存儲模塊用于將數據存儲模塊發(fā)來的單組數據進行緩存,發(fā)送完整數據至數據封裝模塊;
配置存儲模塊用于存儲機器人示教器初始化配置參數;通過服務發(fā)布模塊接收控制器的示教器配置信息和數據模型;
服務封裝模塊用于將數據存儲模塊的完整數據根據調用配置存儲模塊的數據模型進行服務化封裝形成原子服務,并發(fā)送至服務發(fā)布模塊;
服務發(fā)布模塊用于將原子服務列表注冊到控制器,并接收控制器的調用請求;
示教器配置模塊用于監(jiān)聽配置存儲模塊中的示教器配置信息,當示教器配置信息變化時生成配置文件發(fā)送至數據采集模塊。
所述服務封裝模塊包括:
數據建模子模塊調用配置存儲模塊的數據模型根據服務協議生成服務模型;
服務定義子模塊讀取數據存儲模塊的完整數據,并接收數據建模子模塊的服務模型定義原子服務。
所述示教器配置模塊包括:
配置解析子模塊監(jiān)聽配置存儲模塊中的示教器配置信息;當示教器配置信息發(fā)生變化時,將示教器配置信息生成配置文件發(fā)送至配置重置子模塊;
配置重置子模塊將配置文件發(fā)送至數據采集模塊,并重置機器人示教器。
在本發(fā)明的另一實施例中,提供了一種服務化機器人示教器配置方法。其實現原理為:通過服務化封裝將傳統的機器人示教器具備的數據功能轉化為數據服務,另一方面將機器人示教器的配置過程轉化為配置服務。利用基于網絡的服務化封裝,將機器人示教器的應用場景進行了進一步拓展。
基于服務的機器人示教器配置方法,其中主要涉及:數據采集、服務封裝、服務發(fā)布和示教器配置。
所述的數據采集中,包括功能按鍵、用戶界面和數據存儲模塊。
所述的功能按鍵,是指機器人示教器上輔助按鍵,具備自定義功能。
所述的用戶界面,是指機器人示教器內嵌操作應用程序。
所述的數據存儲模塊,是指通過Modbus協議將數據保存在機器人示教器中。
所述的服務封裝中,包括數據建模子模塊和服務定義子模塊。
所述的數據建模子模塊是負責根據機器人示教器存放的數據結構建立服務所需要的數據模型。
所述的服務定義子模塊是在數據建模后根據數據模型對服務進行描述。
所述的服務發(fā)布中,包括服務注冊和服務調用。
所述的服務注冊是指服務需要在網段內服務器上進行注冊,使得服務能夠在網段內進行調用。
所述的服務調用是指通過服務器內的客戶端能夠進行服務調用,獲取機器人示教器數據,并能夠向機器人示教器進行數據傳遞。
所述的示教器配置中,包括配置解析子模塊和配置重置子模塊。
所述的配置解析子模塊是指解析通過所述的服務調用模塊傳遞入機器人示教器配置參數,并存放在示教器初始化過程中讀取配置信息的指定地址中。
所述的配置重置子模塊是指將機器人示教器按照所述的配置解析子模塊獲得的配置信息進行重新配置。
基于服務的機器人示教器配置,其包含以下步驟:
步驟S1:機器人示教器采集機器人數據,并保存在數據存儲模塊;
步驟S2:對數據進行建模并封裝成數據交互服務和示教器配置服務;
步驟S3:發(fā)布封裝的數據交互服務和示教器配置服務;
步驟S4:待控制器調取數據讀取服務進行傳統機器人示教器功能,并調用配置服務;
步驟S5:示教器配置,解析配置信息,重置數據通信接口;
步驟S6:重復步驟S1。
所述的基于服務的機器人示教器配置方法,其中服務封裝的具體方法為:
1.通過機器人示教器中的數據存儲模塊和配置存儲模塊獲取數據;
2.根據機器人示教器與控制器之間的通信協議,建立數據模型;
3.根據數據采集所需配置信息,建立配置模型;
4.使用標準的web服務描述語言對機器人示教器內模型進行統一描述,生成原子性服務。
所述的基于服務的機器人示教器配置方法,其中示教器配置的具體方
法為:
1.監(jiān)聽配置存儲模塊是否變更;
2.若配置存儲模塊沒有變化則重復第1步操作,若配置存儲模塊發(fā)生改變則變更數據采集配置參數;
3.重置數據采集模塊,并按照新的配置參數進行采集。
所述的基于服務的機器人示教器配置方法,其中服務調用部分包括數據服務調用和配置服務調用,具體實現過程描述如下:在機器人示教器定義的服務中,具有自發(fā)現能力。在控制器中可以根據機器人示教器地址獲取機器人示教器內數據服務列表。根據所述的服務列表判定指定獲取數據的所在服務,再調用該服務獲取機器人示教器中指定數據。
所述的基于服務的機器人示教器配置方法,其中數據采集的具體方法為數據讀取配置存儲模塊中的配置參數,根據參數列表進行設備初始化,從而確定機器人示教器采集數據來源與數據存儲地址。
如圖1所示,為本發(fā)明實施例所述機器人示教系統原理框圖。其中,本實施例提供的服務化機器人示教器配置方法,在機器人示教器內部主要包括數據采集模塊、服務封裝模塊、服務發(fā)布模塊和示教器配置模塊。
所述的數據采集模塊包括有線數據采集和無線數據采集兩種接入方式,同時在初始化時調用示教器配置參數,執(zhí)行制定的數據采集任務。
所述的服務封裝模塊包括數據建模子模塊和服務定義子模塊。所述的數據建模是指針對示教器中的數據進行分類,其中數據是通過機器人示教器中的數據存儲模塊和配置存儲模塊獲取數據。然后根據機器人示教器對外輸出數據需要滿足實際需求,建立數據模型。最后根據數據采集所需配置信息建立配置模型,使用標準的web服務描述語言對機器人示教器內模型進行統一描述,生成原子性服務。
所述的服務發(fā)布模塊包括服務注冊模塊和服務調用模塊。其中,服務調用部分包括數據服務調用和配置服務調用,具體實現過程描述如下:在機器人示教器定義的服務中,具有自發(fā)現能力。在控制器中可以根據機器人示教器地址獲取機器人示教器內數據服務列表。根據所述的服務列表判定指定獲取數據的所在服務,再調用該服務獲取機器人示教器中指定數據。
所述的示教器配置中,包括配置解析子模塊和配置重置子模塊。所述的配置解析子模塊是指解析通過所述的服務調用模塊傳遞入機器人示教器配置參數,并存放在示教器初始化過程中讀取配置信息的指定地址中。所述的配置重置子模塊是指將機器人示教器按照所述的配置解析子模塊獲得的配置信息進行重新配置。
如圖2所示,為本發(fā)明實施例所述機器人示教系統的配置方法流程圖。其中,本實施例提供的基于服務的機器人示教器配置方法包括一下步驟:
步驟S1:機器人示教器采集底層數據,并保存在數據存儲模塊;
步驟S2:對數據進行建模并封裝成數據交互服務和示教器配置服務;
步驟S3:發(fā)布封裝的數據交互服務和示教器配置服務;
步驟S4:待控制器調取數據讀取服務進行傳統機器人示教器功能,并調用配置服務;
步驟S5:示教器配置,解析配置信息,重置數據采集方式;
步驟S6:重復步驟S1。
下面就本發(fā)明的工作原理具體實施方式做進一步詳細說明。
當用戶在使用基于服務的機器人示教器時,機器人示教器利用數據采集模塊與機器人控制器交互,并將數據存儲在機器人示教器中的數據存儲模塊中。在本實施例中,機器人示教器與機器人控制器之間按照Modbus協議進行通信。然后再示教器中通過服務封裝模塊,對該部分數據分析建模,該模型將按照標準服務進行建立。在服務模型建立后,機器人示教器中服務發(fā)布模塊進行服務發(fā)布。通過服務發(fā)布模塊發(fā)布的服務具備自發(fā)現能力,可以與控制器進行服務訂閱和推送。在機器人示教器定義服務的同時,服務發(fā)布模塊將按照配置存儲模塊中配置參數進行服務化設置。
在實現機器人示教器服務化后,控制器通過服務客戶端調用可以實現基本的機器人示教器功能。另一方面,控制器端還可以通過服務調用傳遞配置參數。通過配置服務,控制器可以實現對機器人示教器內配置存儲模塊進行設置。配置存儲模塊中的數據參數用于指定數據采集模塊的執(zhí)行參數。
本發(fā)明提供了一種基于服務的機器人示教器配置方法,使得用戶調用機器人示教器服務時,基于網絡環(huán)境可以實現遠程機器人示教器配置,提供更加靈活的機器人示教器配置?;诜盏臋C器人示教器具備非實時信息交互能力,同時利用服務的安全機制,可以保證數據的安全性。
以上所述,僅是本發(fā)明的幾個實施例,并非對本發(fā)明做任何形式的限制,雖然本發(fā)明以較佳實施例揭示如上,然而并非用以限制本發(fā)明,任何熟悉本專業(yè)的技術人員,在不脫離本發(fā)明技術方案的范圍內,利用上述揭示的技術內容做出些許的變動或修飾均等同于等效實施案例,均屬于技術方案范圍內。