專利名稱:視窗式光機電一體化設(shè)備動作流編輯系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明提供一種自動設(shè)備的動作流編輯系統(tǒng),更具體而言是指視窗式光機電一體化設(shè)備動作流編輯系統(tǒng)。
背景技術(shù):
光機電一體化自動設(shè)備是由嵌入式程序控制的半自動/全自動控制系統(tǒng),如汽車工廠的裝配作業(yè)機器人、半導(dǎo)體硅晶片工廠的多機器臂(多軸)自動化生產(chǎn)設(shè)備,全自動生化分析儀。由軟件系統(tǒng)、電氣系統(tǒng)、機械系統(tǒng)、流體管路系統(tǒng)組成。軟件系統(tǒng)通過電路系統(tǒng)采集外界信息(如光電傳感器,機械開關(guān),溫度,壓力,顏色等),經(jīng)過自身控制邏輯運算處理,通過電路控制系統(tǒng)來控制機械系統(tǒng)和流體管路系統(tǒng),以高度的智能精確嚴密地完成復(fù)雜的運動控制行為。一臺設(shè)備為了其自身業(yè)務(wù)功能的需要,需要具備多項自動處理流程。比如,一臺醫(yī)學(xué)核磁共振機,既要設(shè)計出做患者頭部影像采集的流程,又要設(shè)計出做患者胸部影像采集的流程。這些流程由設(shè)備的多個工作單元(工作軸,開關(guān)電控單元等)在時間和空間上有序的配合協(xié)調(diào)動作,共同完成一項復(fù)雜的工作流程。隨著技術(shù)進步和市場競爭的激烈化,設(shè)備構(gòu)成越來越趨于復(fù)雜化,多運動單元自動設(shè)備由一些不同特征的多個單元構(gòu)成。t匕如,一臺全自動生化分析儀,通常有10 20個步進或伺服電機,同時還有許多開關(guān)控制單元(如抓手,閥門,泵),還有許多直流電機驅(qū)動的單元(如傳輸帶、供樣器)組成。機械/結(jié)構(gòu)工程師需要對光機電自動化設(shè)備的各項功能去設(shè)計其動作流程,也就是,為了完成該項功能,合理設(shè)計各個單元在時間上的動作,單元之間的動作互斥和銜接關(guān)系,并定義該流程執(zhí)行過程中的動態(tài)檢測內(nèi)容,使得各種不同情況下機器能夠智能的做出不同的動作響應(yīng)。機械(結(jié)構(gòu))工程師在設(shè)計結(jié)構(gòu)時,有各種各樣的CAD制圖工具輔助其進行三維的制圖設(shè)計。而設(shè)計工作流程的時候,目前沒有任何直觀的工具來描述機器的各個單元該如何在時間和空間上配合來完成該流程。光機電一體化自動設(shè)備在現(xiàn)有開發(fā)方式上,機械/結(jié)構(gòu)工程師將自己的設(shè)計意圖以自然語言或者其它形式語言表達出來,然后和軟件工程師進行會議講解溝通,軟件工程師再根據(jù)其理解去設(shè)計軟件并編寫運動控制邏輯代碼(常用的有PLC可編程邏輯陣列,嵌入式系統(tǒng)C語言運動控制程序,根據(jù)所采用的具體硬件平臺而不同,這些均需要很高的專業(yè)知識和綜合技能)。現(xiàn)實情況下,由于軟件工程師和機械/結(jié)構(gòu)工程師之間客觀存在的專業(yè)分工差異以及各自的領(lǐng)域經(jīng)驗的不同,使得雙方間的溝通無法完全透徹、精準嚴密地完成,因而到目前為止,自動控制設(shè)備(如產(chǎn)業(yè)機器人、多功能機器臂)的開發(fā)存在研發(fā)周期長,成本大,責(zé)任分割困難的問題。
不同的軟件開發(fā)商的軟件體系結(jié)構(gòu)各不相同,即使同一開發(fā)商內(nèi)部,其軟件結(jié)構(gòu)也隨工程師而存在較大的個體差異。在使用自然語言進行溝通時,地方性語言的特性(方言),語言表達習(xí)慣,結(jié)構(gòu)工程師之間也同樣存在較大的個體差異。而且,使用自然語言無法精確嚴密的描述動作流程以及每個動作的詳細。
再者,光機電一體化設(shè)備由于其本身構(gòu)造的復(fù)雜性和寬多個專業(yè)領(lǐng)域的特征,開發(fā)初期,設(shè)備運動控制的細節(jié)本身也確實很難明確定義出來,需要在設(shè)計、研討,試研制,試運行的各個作業(yè)環(huán)節(jié)中不斷進行調(diào)整和改良。絕大多數(shù)情況下,變更都涉及到軟件擔(dān)當(dāng)方的軟件程序代碼修改,屬于人工作業(yè),既要投入較大的人力成本,還會受到入軟件開發(fā)作業(yè)中的軟件錯誤的干擾。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供視窗式光機電一體化設(shè)備動作流編輯系統(tǒng),本發(fā)明為自動化設(shè)備的機械/結(jié)構(gòu)工程師在本發(fā)明提供的系統(tǒng)的編輯裝置的X-Y縱橫網(wǎng)格界面上以圖形制圖方式繪制運動動作,設(shè)計圖面縱軸(Y軸)為各個運動單元,橫軸(X軸)為時間,X軸刻度單位為50毫秒或者100毫秒(可設(shè)置),對各運動單元在時間軸上繪制動作信息,從而設(shè)計出各運動單元有序配合進行協(xié)調(diào)動作的機器動作流數(shù)據(jù)。本發(fā)明的又一目的是為工程師提供一套對動作流設(shè)計圖進行錯誤檢查的分析器。通過對設(shè)計圖進行預(yù)先分析計算,存在碰撞或部件損壞的危險場面被檢測出,以避免存在運動干涉的動作流圖在機器上試運行時發(fā)生碰撞損壞昂貴的零配件。本發(fā)明的再一目的提供一個有效的解決方案來將機械/結(jié)構(gòu)工程師和軟件工程師之間的溝通量降至最少程度。本發(fā)明的又一目的提供一個將工程師所設(shè)計出來的動作流圖轉(zhuǎn)換生成C/C++源代碼文件的代碼生成裝置。對于軟件開發(fā)擔(dān)當(dāng)者而言,不再需要理解動作流的圖面所表達的內(nèi)容,更不需要理解空間時間上動態(tài)運行的各個單元的運動配合關(guān)系,甚至都不用理解生成的程序代碼文件中的函數(shù)/數(shù)組定義/變量定義的具體含義。唯一需要做的就是將其導(dǎo)入軟件工程項目中進行編譯鏈接,并安裝到目標機器中啟動流程運行。這樣一來,面向同一開發(fā)項目的不同領(lǐng)域擔(dān)當(dāng)者之間的溝通風(fēng)險大大降低,溝通量大大減少,大大提高開發(fā)效率。本發(fā)明采用的技術(shù)方案為視窗式光機電一體化設(shè)備動作流編輯系統(tǒng),包括,一動作流編輯裝置,該動作流編輯裝置用于表達時間軸上各個單元的動作狀況、用于表達對每個驅(qū)動電機的動作描述和控制參數(shù)、用于表達每個開關(guān)單元的動作。一錯誤檢查裝置,該錯誤檢查裝置使用運動干涉條件表來檢查利用該動作流編輯裝置編輯出來的動作流是否存在錯誤,并分析各個單元的每一動作是否存在滿足了干涉條件的其它運動單元的位置狀態(tài)或者其它開關(guān)單元的邏輯狀態(tài),并將滿足了干涉條件的各個動作以及其干涉錯誤信息顯示出來,提示人工修改動作流。一源代碼生成裝置,該源代碼生成裝置用于將該動作流編輯裝置產(chǎn)生的動作流數(shù)據(jù)轉(zhuǎn)換生成C/C++語言源程序代碼。該源代碼生成裝置能夠?qū)幼髁鲌D中的每個動作轉(zhuǎn)換成C/C++語言編碼的源程序代碼,生成的代碼包含如下信息封裝動作流的啟動,運行,停止等操作的C++類,表達各個單元的動作信息(含動作時刻,動作名稱,動作函數(shù)體名稱,位置參數(shù)速度參數(shù))的數(shù)組定義,表達各個動作函數(shù)的函數(shù)聲明和函數(shù)實體。 該動作流編輯裝置使用X-Y的二維表格來表達時間軸上得各個單元的動作,比如,Y用于表示運動單元,而X用于表示時間。
該驅(qū)動電機為脈沖電機或伺服電機。
該動作流編輯裝置,以文字或涂色來描述開關(guān)單元的開、關(guān)動作,比如,用ON來表示開關(guān)單元的開啟,用OFF來表示開關(guān)單元的閉合。本發(fā)明的有益效果為本發(fā)明在結(jié)構(gòu)包括,一動作流編輯裝置,一錯誤檢查裝置及一源代碼生成裝置,該動作流編輯裝置用于表達時間軸上各個單元的動作狀況、用于表達對每個驅(qū)動電機的動作描述和控制參數(shù)、用于表達每個開關(guān)單元的動作。一錯誤檢查裝置,該錯誤檢查裝置使用運動干涉條件表來檢查利用該動作流編輯裝置編輯出來的動作流是否存在錯誤,并分析各個單元的每一動作是否存在滿足了干涉條件的其它運動單元的位置狀態(tài)或者其它開關(guān)單元的邏輯狀態(tài),并將滿足了干涉條件的各個動作以及其干涉錯誤信息顯示出來,提示人工修改動作流。一源代碼生成裝置,該源代碼生成裝置用于將該動作流編輯裝置產(chǎn)生的動作流數(shù)據(jù)轉(zhuǎn)換生成C/C++語言源程序代碼。本發(fā)明為自動化設(shè)備的機械/結(jié)構(gòu)工程師在本發(fā)明提供的系統(tǒng)的編輯裝置的X-Y縱橫網(wǎng)格界面上以圖形制圖方式繪制運動動作,設(shè)計圖面縱軸(Y軸)為各個運動單元,橫軸(X軸)為時間,X軸刻度單位為50毫秒或者100毫秒(可設(shè)置),對各運動單元在時間軸上繪制動作信息,從而設(shè)計出各運動單元有序配合進行協(xié)調(diào)動作的機器動作流數(shù)據(jù)。本發(fā)明為工程師提供一套對動作流設(shè)計圖進行錯誤檢查的分析器。通過對設(shè)計圖進行預(yù)先分析計算,存在碰撞或部件損壞的危險場面被檢測出,以避免存在運動干涉的動作流圖在機器上試運行時發(fā)生碰撞損壞昂貴的零配件。本發(fā)明提供一個有效的解決方案來將機械/結(jié)構(gòu)工程師和軟件工程師之間的溝通量降至最少程度。本發(fā)明將工程師所設(shè)計出來的動作流圖轉(zhuǎn)換生成C/C++源代碼文件的代碼生成裝置。對于軟件開發(fā)擔(dān)當(dāng)者而言,不再需要理解動作流的圖面所表達的內(nèi)容,更不需要理解空間時間上動態(tài)運行的各個單元的運動配合關(guān)系,甚至都不用理解生成的程序代碼文件中的函數(shù)/數(shù)組定義/變量定義的具體含義。唯一需要做的就是將其導(dǎo)入軟件工程項目中進行編譯鏈接,并安裝到目標機器中啟動流程運行。這樣一來,面向同一開發(fā)項目的不同領(lǐng)域擔(dān)當(dāng)者之間的溝通風(fēng)險大大降低,溝通量大大減少,大大提高開發(fā)效率。
圖I為本發(fā)明的各裝置間的關(guān)系方框2為物理碰撞裝置沖突的示例圖。圖3為某設(shè)備的液流管路系統(tǒng)示例圖。圖4為C語言代碼生成裝置處理流程圖。
具體實施例方式視窗式光機電一體化設(shè)備動作流編輯系統(tǒng),包括,一動作流編輯裝置,該動作流編輯裝置用于表達時間軸上各個單元的動作狀況、用于表達對每個驅(qū)動電機的動作描述和控制參數(shù)、用于表達每個開關(guān)單元的動作。一錯誤檢查裝置,該錯誤檢查裝置使用運動干涉條件表來檢查利用該動作流編輯裝置編輯出來的動作流是否存在錯誤,并分析各個單元的每一動作是否存在滿足了干涉條件的其它運動單元的位置狀態(tài)或者其它開關(guān)單元的邏輯狀態(tài),并將滿足了干涉條件的各個動作以及其干涉錯誤信息顯示出來,提示人工修改動作流。一源代碼生成裝置,該源代碼生成裝置用于將該動作流編輯裝置產(chǎn)生的動作流數(shù)據(jù)轉(zhuǎn)換生成 C/C++語言源程序代碼。該源代碼生成裝置能夠?qū)幼髁鲌D中的每個動作轉(zhuǎn)換成C/C++語言編碼的源程序代碼,生成的代碼包含如下信息封裝動作流的啟動,運行,停止等操作的C++類,表達各個單元的動作信息(含動作時刻,動作名稱,動作函數(shù)體名稱,位置參數(shù)速度參數(shù))的數(shù)組定義,表達各個動作函數(shù)的函數(shù)聲明和函數(shù)實體。進一步,該動作流編輯裝置使用X-Y的二維表格來表達時間軸上得各個單元的動作,比如,X用于表示運動單元,而Y用于表示時間。該驅(qū)動電機為脈沖電機或伺服電機。該動作流編輯裝置,以文字或涂色來描述開關(guān)單元的開、關(guān)動作。比如,用ON來表示開關(guān)單元的開啟,用OFF來表示開關(guān)單元的閉合如圖I所示,該動作流編輯裝置10,提供一個X-Y表格式編輯界面,用來繪制動作流圖,該動作流編輯裝置10能夠根據(jù)單元配置信息自動創(chuàng)建空白的工作流圖,圖面X軸為時間軸,按100毫秒刻度或50毫秒刻度標注時刻刻度值;圖面Y軸上依次羅列各個運動控制單兀。用戶在工作流圖中依次按照單元和時間填入動作名稱,標注動作參數(shù)。對于步進電機或伺服電機驅(qū)動的單元,標注速度參數(shù)名稱和位置。對于直流電機驅(qū)動單元或輸出端口控制單元(如閥門、抓手,泵),標注0N/0FF,開/閉,啟/停,或者涂色。涂色方式標注比較直觀,從動作起點時間到動作結(jié)束時間的時間段涂上白色以外的任何顏色即可。
職.議難工作浪程
—........................HtB^-—_ oni mm
it.-r 名 r ' ifTfifiRiTiMSliWTTmWsumM^BfTJi
t 葉i d1- - - I - ■
,y-f J . I . ^i r ; ; ; ^ ! j j ■ j ■ j I ] ! j j ■; ! j ! j ■ j =
I \ \ \i... HiGNZSrrlJ--Cii..MMMMM!^ Hi Gl-t/Srr I... r Ol. i'A i l
■;.......................■■■■工:二
i jr 1 . 1.1s 1..hich/hiirm a.iiich/.i^oi Mi^i.i; MMM !£^^..^5;,. hicn/ii ImMmNMM/1!!''!'!
SHfi i^ff^: — n ——1125〒<二廠:1———…
I I j S jSr.^iS^i^QH/lr .rOi..A!i^ \ \ % P. i., Hi QH/Ir. rC . # C g i || | ] ^
—ITi—FTi—r「f—I—rr———
------- ----. ** !.'* '-*'°* *"■'*-* '-"-'I* —*i- —. — I— — — —.-!*I表I表I標注動作參數(shù)后的動作流圖,如表I動作流圖繪制完成后,用戶操作編輯裝置的界面將其存入動作流數(shù)據(jù)文件11,該動作流編輯裝置10將表格的各個格子的格式和內(nèi)容全部保存到該動作流數(shù)據(jù)文件11,以保證下次用戶打開該動作流文件時能夠按照同樣的界面顯示出來。如圖I所示該錯誤檢查裝置20,根據(jù)機械/結(jié)構(gòu)工程師配置在文件中的運動單元運動干涉配置文件21中的配置信息對動作流數(shù)據(jù)進行運動沖突錯誤檢測。查出錯誤時通過人機接口提示錯誤信息22,即提示具體的錯誤號碼和錯誤信息。其錯誤檢查的方法是從動作流數(shù)據(jù)文件11中讀取各個運動控制單元以及其時間軸上的各個動作,而后對每個動作,根據(jù)其運動單元名稱從運動沖突配置表中查出該單元的沖突配置清單對于沖突配置清單中的每個沖突配置。如果它是物理碰撞干涉沖突,則進一步檢查碰撞沖突對象的單元在動作啟動時刻上的位置狀態(tài),如果位置狀態(tài)符合了碰撞干涉條件,則檢測出沖突。如果它是邏輯狀態(tài)干涉,則檢查干涉對象的單元在動作啟動時刻的狀態(tài)(0N或0FF),若該狀態(tài)符合了干涉條件,則檢測出沖突。對于已經(jīng)檢查出的 沖突,將其錯誤碼和錯誤信息,以及動作名稱,時間軸上時刻顯示到人機接口界面上。物理碰撞裝置沖突的示例如圖2所示,
權(quán)利要求
1.視窗式光機電一體化設(shè)備動作流編輯系統(tǒng),其特征在于包括, 一動作流編輯裝置,該動作流編輯裝置用于表達時間軸(X軸)上各個單元的動作狀況、用于表達對每個驅(qū)動電機的動作描述和控制參數(shù)、用于表達每個開關(guān)單元的動作; 一錯誤檢查裝置,該錯誤檢查裝置使用運動干涉條件表來檢查利用該動作流編輯裝置編輯出來的動作流是否存在錯誤,并分析各個單元的每一動作是否存在滿足了干涉條件的其它運動單元的位置狀態(tài)或者其它開關(guān)單元的邏輯狀態(tài),并將滿足了干涉條件的各個動作以及其干涉錯誤信息顯示出來,提示人工修改動作流; 一源代碼生成裝置,該源代碼生成裝置用于將該動作流編輯裝置產(chǎn)生的動作流數(shù)據(jù)轉(zhuǎn)換生成C/C++語言源程序代碼。
2.如權(quán)利要求I所述的視窗式光機電一體化設(shè)備動作流編輯系統(tǒng),其特征在于,該動作流編輯裝置使用X-Y的二維表格來表達時間軸上得各個單元的動作,Y用于表示運動單元,而X用于表示時間。
3.如權(quán)利要求I所述的視窗式光機電一體化設(shè)備動作流編輯系統(tǒng),其特征在于,該驅(qū)動電機為脈沖電機或伺服電機。
4.如權(quán)利要求I所述的視窗式光機電一體化設(shè)備動作流編輯系統(tǒng),其特征在于,該動作流編輯裝置,以文字或涂色來描述開關(guān)單元的開、關(guān)動作,用ON來表示開關(guān)單元的開啟,用OFF來表示開關(guān)單元的閉合。
全文摘要
本發(fā)明提供視窗式光機電一體化設(shè)備動作流編輯系統(tǒng)包括,一動作流編輯裝置,一錯誤檢查裝置及一源代碼生成裝置,該動作流編輯裝置用于表達時間軸上各個單元的動作狀況、錯誤檢查裝置使用運動干涉條件表來檢查利用該動作流編輯裝置編輯出來的動作流是否存在運動干涉錯誤,該源代碼生成裝置用于將該動作流編輯裝置產(chǎn)生的動作流數(shù)據(jù)轉(zhuǎn)換生成C/C++語言源程序代碼。本發(fā)明為自動化設(shè)備的機械/結(jié)構(gòu)工程師在本發(fā)明提供的系統(tǒng)的編輯裝置的X-Y縱橫網(wǎng)格界面上以圖形制圖方式繪制運動動作,設(shè)計圖面縱軸(Y軸)為各個運動單元,對各運動單元在時間軸(X軸)上繪制動作信息,從而設(shè)計出各運動單元在時間上有序配合進行協(xié)調(diào)動作的機器動作流數(shù)據(jù)。
文檔編號G05B19/04GK102645899SQ20121006963
公開日2012年8月22日 申請日期2012年3月15日 優(yōu)先權(quán)日2012年3月15日
發(fā)明者王愛民 申請人:南寧珞德信息技術(shù)有限公司