新四季網

一種運動控制系統及方法

2023-10-11 20:48:09 3

一種運動控制系統及方法
【專利摘要】本發明適用於計算機應用領域,提供了一種運動控制系統及方法,所述系統包括:人機互動模塊,用於通過人機互動界面獲得用戶輸入的運動指令;運動指令執行模塊,用於通過指令表或封裝有多個函數的腳本來執行所述運動指令;通訊模塊,用於通過MODBUS通訊協議實現人機互動模塊及運動指令執行模塊的通信及數據傳輸。
【專利說明】一種運動控制系統及方法
【技術領域】
[0001]本發明屬於計算機應用領域,尤其涉及一種運動控制系統及方法。
【背景技術】
[0002]目前的開放式運動控制系統,多為基於PLCOpen (獨立於生產商和產品的全球性協會)這個標準,而該標準目前基本都是由國外的軟體支持的,國內的軟體還沒法較好的支持基於PLCOpen標準的開放式運動系統。然而,國外的軟體價格都較為昂貴,且由於開發難度較大,用戶難以進行二次開發。

【發明內容】

[0003]本發明實施例的目的在於提供一種運動控制系統及方法,旨在解決現有的國外軟體價格昂貴且難以實現二次開發的問題。
[0004]本發明實施例是這樣實現的,一種運動控制系統,所述系統包括:
[0005]人機互動模塊,用於通過人機互動界面獲得用戶輸入的運動指令;
[0006]運動指令執行模塊,用於通過指令表或封裝有多個函數的腳本來執行所述運動指令;
[0007]通訊模塊,用於通過MODBUS通訊協議實現人機互動模塊及運動指令執行模塊的通信及數據傳輸。
[0008]本發明實施例的另一目的在於提供一種運動控制方法,所述方法包括:
[0009]通過人機互動界面獲得用戶輸入的運動指令;
[0010]通過MODBUS通訊協議傳輸所述運動指令;
[0011]通過指令表或封裝有多個函數的腳本來執行所述運動指令。
[0012]在本發明實施例中,人機互動界面接收到用戶輸入的運動指令後,運動指令執行模塊通過指令表或封裝有多個函數的腳本來執行所述運動指令。由於已經封裝了很多的函數供用戶調用,降低了用戶二次開發的難度,且能夠多任務處理多個運動指令。
【專利附圖】

【附圖說明】
[0013]圖1是本發明實施例提供的運動控制系統的結構圖;
[0014]圖2為客服端訪問的自定義MODBUS數據包的格式的示意圖;
[0015]圖3為服務端訪問的自定義MODBUS數據包的格式的示意圖;
[0016]圖4是本發明實施例提供的運動控制方法的流程圖。
【具體實施方式】
[0017]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。[0018]為了說明本發明所述的技術方案,下面通過具體實施例來進行說明。
[0019]實施例一:
[0020]如圖1所示為本發明實施例提供的一種運動控制系統的結構圖,為了便於說明,僅不出了與本發明實施例相關的部分。
[0021]在本發明實施例中,運動控制系統包括:人機互動模塊11,運動指令執行模塊12,及與所述人機互動模塊11和運動指令執行模塊12相連的通訊模塊13。
[0022]其中:
[0023]人機互動模塊11,用於通過人機互動界面獲得用戶輸入的運動指令。
[0024]在本發明實施例中,人機互動模塊11 一般部署於客戶端,為用戶提供人機互動界面,用戶可根據實際應用在人機互動界面輸入各種運動指令。
[0025]優選的,人機互動模塊11中的人機互動界面還可用於用戶修改參數,監控系統運行狀態等。
[0026]需要說明的是,人機互動模塊11可以同時部署於多個客戶端,實現多個人機互動。
[0027]運動指令執行模塊12,用於通過指令表或封裝有多個函數的腳本來執行運動指令。
[0028]在本發明實施例中,運動指令執行模塊12用於執行用戶通過人機互動界面輸入的運動指令。具體有兩種指令執行方式,其一是通過指令表中定義好的指令來執行用戶輸入的運動指令,另一是通過腳本從封裝的函數中調用對應的函數執行用戶輸入的運動指令。為了能夠處理各種運動指令,已經預先封裝了多個不同功能的函數。
[0029]在本發明實施例中,運動指令執行模塊12包括兩個子模塊,分別為指令表執行模塊121或腳本執行模塊122,其中:
[0030]指令表執行模塊121,用於通過指令表中的指令單任務執行運動指令。
[0031]在本發明實施例中,指令表中包括有多個不同的指令,可以用於執行不同的運動指令。由於指令表只能串行執行各種指令,因此只能通過指令表中的指令單任務順序執行運動指令,但是執行效率較高。指令表中的指令包括開發者預先定義好的指令,以及用戶在系統使用過程中自行添加的宏指令。
[0032]需要說明的是,為用戶提供了宏指令編輯接口後,用戶在實際使用該運動控制系統的過程中,便可根據實際的使用需要,通過腳本編輯滿足實際功能需求的自定義宏指令,並編輯執行宏指令的函數腳本。當執行到宏指令時,便調用對應執行該宏指令的函數腳本來執行該宏指令。使得該運動控制系統的應用更加靈活,適宜不同需求的用戶使用。
[0033]腳本執行模塊122,用於通過腳本從封裝的函數中調用對應的函數來執行運動指令。
[0034]在本發明實施例中,預先通過軟體編輯語言將常用的功能封裝為LUA (—種腳本語言)函數,因此腳本執行模塊122每次收到用戶輸入的運動指令,便可通過腳本從封裝的函數中調用對應的函數執行運動指令。其中,封裝的常用函數包括但不限於:10 (Input/Output,輸入輸出)輸出、單軸運動、直線插補、速度控制、延時、啟動、停止、復位、串口通訊、網絡通訊、MODBUS (—種總線協議)地址訪問等。由於已經封裝了很多的函數供用戶調用,因此降低了用戶二次開發的難度。[0035]需要說明的是,由於人機互動界面可以部署於多個客戶端中,因此可能同時收到用戶輸入的多個運動指令,因此當腳本執行模塊122收到用戶輸入的多個運動指令時,通過腳本分別從封裝的函數中調用對應的函數並行多任務執行所述多個運動指令,實現了多個運動指令的同時執行。例如在控制左邊的運動控制平臺加工的時候,右邊的上下料平臺可以同時進行搬運、上下料等動作。
[0036]在本發明實施例中,由於運動指令的觸發方式不同,根據不同的指令觸發方式,有三種不同的指令執行方式,因此腳本執行模塊122包括三個子模塊,分別為定時執行模塊1221,或指令觸發模塊1222,或條件觸發模塊1223,其中:
[0037]定時執行模塊1221,用於當定時器觸發時,通過腳本從封裝的函數中調用對應的函數來執行運動指令。
[0038]在本發明實施例中,當指令是由定時器觸發時,通過定時執行指令。如main_task這個腳本函數是每N毫秒執行一次,N為開發者預先設置的正整數。
[0039]指令觸發模塊1222,用於運動指令被觸發時,通過腳本從封裝的函數中調用對應的函數來執行運動指令。
[0040]在本發明實施例中,如當執行到宏指令時,便可調用對應的函數腳本執行宏指令。
[0041]條件觸發模塊1223,用於當運動指令觸發了預設的條件時,通過腳本從封裝的函數中調用對應的函數來執行運動指令。例如當用戶按下了停止按鈕、加工之前、加工完畢、復位之前、復位完畢等,都會調用相應的腳本。
[0042]通訊模塊13,用於通過MODBUS通訊協議實現人機互動模塊11及運動指令執行模塊12的通信及數據傳輸。
[0043]在本發明實施例中,通訊模塊13負責通過串口或網口實現人機互動模塊11及運動指令執行模塊12的通信及數據傳輸。本發明中的數據通訊使用的是MODBUS通訊協議。
[0044]優選的,由於標準MODBUS通訊協議的數據包必須小於256個字節,沒有連續多幀的發送方式。因此,為了更為方便的處理大批量的數據交互,在MODBUS基礎上擴展了文件通訊功能。通訊模塊13還可用於通過在M0DBUSPDU數據包內再封裝了一層自定義的協議以用來自定義MODBUS數據包,及按照所述自定義MODBUS數據包格式解析接收到的MODBUS數據包。自定義MODBUS數據包的格式如圖2及圖3所示。圖2為客服端訪問的自定義MODBUS數據包的格式,圖3為服務端訪問的自定義MODBUS數據包的格式。每當通訊模塊13接收到MODBUS數據包時,先判斷是否是自定義MODBUS數據包,是則可以批量按照自定義的MODBUS數據包格式處理。
[0045]在本發明實施例中,人機互動界面接收到用戶輸入的運動指令後,運動指令執行模塊通過指令表或封裝有多個函數的腳本來執行所述運動指令。由於已經封裝了很多的函數供用戶調用,降低了用戶二次開發的難度,且能夠多任務處理多個運動指令。指令表中添加了用戶自定義的宏指令,也使得系統更加靈活。此外,由於本發明都是使用LUA腳本語言,因此代碼開源,具有較高的開放性,且便於嵌入系統軟體。腳本文件在執行時又是編譯成二進位文件再解釋執行,具有較好的保密性。
[0046]實施例二:
[0047]圖4為本發明實施例提供的一種運動控制方法的流程圖,為了便於說明,僅示出了與本發明實施例相關的部份。[0048]在步驟S401中,通過人機互動界面獲得用戶輸入的運動指令。
[0049]在本發明實施例中,機交互界面還可用於用戶修改參數,監控系統運行狀態等。人機互動界面可以同時部署於多個客戶端,實現多個人機互動。
[0050]在步驟S402中,通過MODBUS通訊協議傳輸運動指令。
[0051 ] 在本發明實施例中,為了更為方便的處理大批量的數據交互,在MODBUS基礎上擴展了文件通訊功能。通過在MODBUS PDU數據包內再封裝了一層自定義的協議以用來自定義MODBUS數據包,及按照所述自定義MODBUS數據包格式解析接收到的MODBUS數據包。
[0052]在步驟S403中,通過指令表或封裝有多個函數的腳本來執行運動指令。
[0053]在本發明實施例中,具體有兩種指令執行方式,其一是通過指令表中定義好的指令來單任務執行用戶輸入的運動指令,另一是通過腳本從封裝的函數中調用對應的函數執行用戶輸入的運動指令。為了能夠處理各種運動指令,已經預先封裝了多個不同功能的函數。
[0054]在本發明實施例中,指令表中包括有多個不同的指令,可以用於執行不同的運動指令。由於指令表只能串行執行各種指令,因此只能通過指令表中的指令單任務順序執行運動指令,但是執行效率較高。指令表中的指令包括開發者預先定義好的指令,以及用戶在系統使用過程中自行添加的宏指令。
[0055]在本發明實施例中,由於人機互動界面可以部署於多個客戶端中,因此可能同時收到用戶輸入的多個運動指令,因此當腳本執行模塊收到用戶輸入的多個運動指令時,通過腳本分別從封裝的函數中調用對應的函數並行多任務執行所述多個運動指令,實現了多個運動指令的同時執行。
[0056]在本發明實施例中,由於運動指令的觸發方式不同,根據不同的指令觸發方式,有三種不同的指令執行方式,其中:
[0057]其一,當定時器觸發時,通過腳本從封裝的函數中調用對應的函數來執行運動指令。
[0058]其二,運動指令被觸發時,通過腳本從封裝的函數中調用對應的函數來執行運動指令。
[0059]其三,當運動指令觸發了預設的條件時,通過腳本從封裝的函數中調用對應的函數來執行運動指令。
[0060]在本發明實施例中,人機互動界面接收到用戶輸入的運動指令後,運動指令執行模塊通過指令表或封裝有多個函數的腳本來執行所述運動指令。由於已經封裝了很多的函數供用戶調用,降低了用戶二次開發的難度,且能夠多任務處理多個運動指令。指令表中添加了用戶自定義的宏指令,也使得系統更加靈活。此外,由於本發明都是使用LUA腳本語言,因此代碼開源,具有較高的開放性,且便於嵌入系統軟體。腳本文件在執行時又是編譯成二進位文件再解釋執行,具有較好的保密性。
[0061]本領域普通技術人員可以理解,實現上述實施例方法中的全部或部分步驟是可以通過程序來指令相關的硬體來完成,所述的程序可以在存儲於一計算機可讀取存儲介質中,所述的存儲介質,如R0M/RAM、磁碟、光碟等。
[0062]以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種運動控制系統,其特徵在於,所述系統包括: 人機互動模塊,用於通過人機互動界面獲得用戶輸入的運動指令; 運動指令執行模塊,用於通過指令表或封裝有多個函數的腳本來執行所述運動指令;通訊模塊,用於通過MODBUS通訊協議實現人機互動模塊及運動指令執行模塊的通信及數據傳輸。
2.如權利要求1所述的系統,其特徵在於,所述運動指令執行模塊包括: 指令表執行模塊,用於通過指令表中的指令單任務執行所述運動指令;或 腳本執行模塊,用於通過腳本從封裝 的函數中調用對應的函數來執行所述運動指令。
3.如權利要求2所述的系統,其特徵在於,所述指令表執行模塊的指令表中的指令包括用戶自定義的宏指令。
4.如權利要求2所述的系統,其特徵在於,所述腳本執行模塊還可用於,當用戶輸入多個運動指令時,通過腳本分別從封裝的函數中調用對應的函數來並行執行所述多個運動指令。
5.如權利要求4所述的系統,其特徵在於,所述腳本執行模塊包括: 定時執行模塊,用於當定時器觸發時,通過腳本從封裝的函數中調用對應的函數來執行所述運動指令; 指令觸發模塊,用於所述運動指令被觸發時,通過腳本從封裝的函數中調用對應的函數來執行所述運動指令; 條件觸發模塊,用於當所述運動指令觸發了預設的條件時,通過腳本從封裝的函數中調用對應的函數來執行所述運動指令。
6.如權利要求1所述的系統,其特徵在於,所述通訊模塊還可用於自定義MODBUS數據包,及按照所述自定義MODBUS數據包格式解析接收到的MODBUS數據包。
7.—種運動控制方法,其特徵在於,所述方法包括: 通過人機互動界面獲得用戶輸入的運動指令; 通過MODBUS通訊協議傳輸所述運動指令; 通過指令表或封裝有多個函數的腳本來執行所述運動指令。
8.如權利要求7所述的方法,其特徵在於,所述通過指令表或封裝有多個函數的腳本來執行所述運動指令包括: 通過指令表中的指令單任務執行所述運動指令,所述指令表中的指令包括用戶自定義的宏指令;或 通過腳本從封裝的函數中調用對應的函數來執行所述運動指令,當用戶輸入多個運動指令時,通過腳本分別從封裝的函數中調用對應的函數來並行執行所述多個運動指令。
9.如權利要求8所述的方法,其特徵在於,所述通過腳本從封裝的函數中調用對應的函數來執行所述運動指令包括: 當定時器觸發時,通過腳本從封裝的函數中調用對應的函數來執行所述運動指令; 所述運動指令被觸發時,通過腳本從封裝的函數中調用對應的函數來執行所述運動指令; 當所述運動指令觸發了預設的條件時,通過腳本從封裝的函數中調用對應的函數來執行所述運動指令。
10.如權利要求7至9任一權利要求所述的方法,其特徵在於,所述方法還包括: 自定義MODBUS數據包,及按照所述自定義MODBUS數據包格式解析接收到的MODBUS數據包。
【文檔編號】G05B19/042GK103955153SQ201410151765
【公開日】2014年7月30日 申請日期:2014年4月15日 優先權日:2014年4月15日
【發明者】湯功義, 王曉剛, 曾逸 申請人:深圳眾為興技術股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀