孫廣明,趙明宇,汪映輝,儲(chǔ) 毅
(國網(wǎng)電力科學(xué)研究院,南京 210061)
近幾年計(jì)算機(jī)硬件發(fā)展突飛猛進(jìn),對三維可視化技術(shù)的優(yōu)化以及性能有了很大的提升,極大地促進(jìn)了三維表現(xiàn)形式的發(fā)展。隨著國家對新能源技術(shù)的大力推動(dòng),電動(dòng)汽車成為了新能源發(fā)展的熱點(diǎn),為了解決電動(dòng)汽車快速能量補(bǔ)給的問題,電池更換模式逐漸得到應(yīng)用與推廣。為提高電池更換效率,電池更換設(shè)備必須向自動(dòng)化、智能化方向發(fā)展,通過引入采用機(jī)器人技術(shù)的高度自動(dòng)化智能電池更換設(shè)備可以較好地解決這一問題[1]。目前電動(dòng)汽車換電站大都配備了監(jiān)控系統(tǒng),來確保電池更換設(shè)備的安全運(yùn)行,但目前電動(dòng)汽車電池更換機(jī)器人的監(jiān)控技術(shù)基本都停留在以二維的方式表示,主要是基于抽象符號的系統(tǒng),不能給人以自然界的直觀感受,大量的多維空間信息無法得到利用,同時(shí)還有些技術(shù)無法得到實(shí)現(xiàn),例如離線示教技術(shù)[2]。
本文針對當(dāng)前快速發(fā)展的電動(dòng)汽車電池更換機(jī)器人監(jiān)控技術(shù)以及電池更換機(jī)器人的幾何建模和運(yùn)動(dòng)學(xué)建模進(jìn)行了研究和總結(jié),設(shè)計(jì)和實(shí)現(xiàn)了電動(dòng)汽車電池更換機(jī)器人的三維實(shí)時(shí)監(jiān)控和電池更換設(shè)備的離線示教功能,極大地方便了用戶對換電機(jī)器人的全景監(jiān)控,同時(shí)不僅可以有效節(jié)約電池更換機(jī)器人示教帶來的資源和大量時(shí)間的浪費(fèi),而且提高了電池更換機(jī)器人的運(yùn)行效率,同時(shí)對低碳環(huán)保也具有一定的現(xiàn)實(shí)意義。
要實(shí)現(xiàn)對電池更換機(jī)器人的三維實(shí)時(shí)監(jiān)控,首先需要對機(jī)器人和電池更換場景進(jìn)行幾何建模和運(yùn)動(dòng)學(xué)建模,然后通過三維實(shí)時(shí)監(jiān)控程序讀取模型文件進(jìn)行顯示,數(shù)據(jù)采集和處理模塊則實(shí)時(shí)采集換電設(shè)備的狀態(tài),對運(yùn)動(dòng)學(xué)模型進(jìn)行動(dòng)態(tài)改變狀態(tài),采用雙緩沖的方式進(jìn)行三維實(shí)時(shí)監(jiān)控界面展示,實(shí)現(xiàn)電池更換機(jī)器人的三維全景實(shí)時(shí)監(jiān)控。
機(jī)器人三維實(shí)時(shí)監(jiān)控采用模塊化、弱耦合的設(shè)計(jì)方式來實(shí)現(xiàn),所有外部模型的存儲(chǔ)都采用文件系統(tǒng),這樣可以方便地實(shí)現(xiàn)與其他系統(tǒng)通信,同時(shí)方便采用三維建模軟件3DMax來完成幾何建模的過程,達(dá)到快速建模的目的。電池更換機(jī)器人三維實(shí)時(shí)監(jiān)控的模塊主要包括幾何建模和運(yùn)動(dòng)學(xué)建模、換電機(jī)器人離線示教、數(shù)據(jù)采集和處理、文件系統(tǒng)和外部接口、視頻聯(lián)動(dòng)等。系統(tǒng)各模塊的相互結(jié)構(gòu)關(guān)系如圖1所示。
圖1 電池更換機(jī)器人監(jiān)控結(jié)構(gòu)圖
幾何建模就是通過運(yùn)動(dòng)透視等技術(shù)手段將電池更換機(jī)器人實(shí)體進(jìn)行三維顯示[3];為了進(jìn)行離線示教,對幾何建模要求很高,誤差必須要在電池更換設(shè)備定位允許的誤差之內(nèi);而運(yùn)動(dòng)學(xué)建模則是將電池更換機(jī)器人的連桿和關(guān)節(jié)抽象成數(shù)學(xué)概念上的線和點(diǎn),建立適當(dāng)?shù)臄?shù)學(xué)模型,以利用采集得到的變化參數(shù),通過轉(zhuǎn)換和計(jì)算得到不同時(shí)刻的狀態(tài)參數(shù)。
單體幾何建??梢酝ㄟ^成熟的三維建模軟件3DMax進(jìn)行建模,只需要導(dǎo)出為xml[4]格式的文件,然后通過本系統(tǒng)的組態(tài)軟件來解析模型文件,從而建立單個(gè)對象模型,如圖2所示。
圖2 線性渲染的電動(dòng)汽車、電池、電池架模型
對于機(jī)器人這種多關(guān)節(jié)的模型,在創(chuàng)建出單個(gè)對象后,往往需要利用各種關(guān)節(jié)將不同的對象鏈接起來,系統(tǒng)提供了鉸鏈型、球-球窩型、滑竿柱型和固定型等類型的關(guān)節(jié)。其中鉸鏈型為合頁關(guān)節(jié),滑竿柱型為插銷關(guān)節(jié),這些關(guān)節(jié)都有內(nèi)置的馬達(dá)。本系統(tǒng)選用鉸鏈關(guān)節(jié)來連接驅(qū)動(dòng)輪和電池更換設(shè)備車體,采用固定關(guān)節(jié)構(gòu)建換電機(jī)器人車體結(jié)構(gòu)。
下面以使用鉸鏈關(guān)節(jié)連接兩個(gè)對象為例,簡單說明創(chuàng)建關(guān)節(jié)的方法。在調(diào)用jointCreateHinge函數(shù)創(chuàng)建鉸鏈關(guān)節(jié)對象后,再調(diào)用jointAttach函數(shù)指定用該關(guān)節(jié)連接的兩個(gè)物體對象,然后調(diào)用jointSetHingeAnchor函數(shù)設(shè)定旋轉(zhuǎn)軸的中心點(diǎn)坐標(biāo),并調(diào)用jointSetHingeAxis設(shè)定旋轉(zhuǎn)軸的方向。
采用線性渲染方式的電池更換機(jī)器人模型如圖3所示。
圖3 電池更換機(jī)器人模型
為了讓電池更換機(jī)器人對象能夠在仿真環(huán)境中運(yùn)動(dòng)起來,系統(tǒng)提供了三種方法:1)調(diào)用bodyAddForce、bodyAddTorque等函數(shù)給剛體施加力的作用;2)調(diào)用jointSetHingeParam函數(shù)來改變內(nèi)置馬達(dá)的轉(zhuǎn)速,同時(shí)需指定該函數(shù)的第二個(gè)輸入?yún)?shù)為paramVel;3)調(diào)用bodySetLinearVel和bodySetAngularVel兩個(gè)函數(shù)直接給物體設(shè)定線速度和角速度。此外,在系統(tǒng)仿真環(huán)境中,可通過兩種方式來模擬彈簧-阻尼系統(tǒng):1)通過設(shè)置ERP (Error Reduction Parameter)和CFM (Constraint Force Mixing)兩個(gè)參數(shù)來實(shí)現(xiàn),ERP為每一仿真循環(huán)中的修正誤差,取值范圍為0~0.8,默認(rèn)取值為0.2;CFM代表物理引擎的全局混合約束力,它反映物體表面的柔軟程度,其取值范圍為10e-9~1;2)利用動(dòng)力學(xué)方程來求解,即胡克定律:
其中k為物體的勁度系數(shù),x為物體形變量。考慮阻尼系數(shù)時(shí),動(dòng)力學(xué)方程為:
其中γ為阻尼系數(shù),它與物體的形狀以及周圍性質(zhì)相關(guān)。
監(jiān)控系統(tǒng)采用工業(yè)以太網(wǎng)方式為物理介質(zhì)、以國家標(biāo)準(zhǔn)工業(yè)通訊協(xié)議為通信規(guī)約和電池更換機(jī)器人進(jìn)行通信,實(shí)時(shí)接收換電設(shè)備的狀態(tài),并對獲得的數(shù)據(jù)進(jìn)行數(shù)學(xué)計(jì)算、粗大誤差剔除、線性優(yōu)化處理,最后將處理后的數(shù)據(jù)傳輸給電池更換機(jī)器人三維模型來顯示及入庫操作,數(shù)據(jù)采集處理流程如圖4所示。
圖4 采集處理顯示流程圖
圖4采用的數(shù)據(jù)采集處理流程,能夠方便實(shí)現(xiàn)對電池更換機(jī)器人、電池架、電動(dòng)汽車以及安防設(shè)備等進(jìn)行三維實(shí)時(shí)監(jiān)控顯示,方便用戶直觀查看電池箱的充電狀態(tài)、電動(dòng)汽車的當(dāng)前位置、電池箱的更換情況以及電池架上有無電池箱等信息。
數(shù)據(jù)采集部分不僅僅是從受控設(shè)備獲取實(shí)時(shí)值,還可以接受三維實(shí)時(shí)監(jiān)控程序發(fā)送的遠(yuǎn)程控制命令,并及時(shí)地傳輸給受控設(shè)備以控制設(shè)備的各種動(dòng)作行為,從而保障設(shè)備的安全高效運(yùn)行。
電池更換機(jī)器人離線示教[5]是利用計(jì)算機(jī)圖形學(xué)的成果,建立電池更換機(jī)器人及其工作環(huán)境的幾何模型,通過對圖形的控制和操作,在離線的情況下進(jìn)行軌跡規(guī)劃。通過對示教結(jié)果進(jìn)行三維圖形動(dòng)畫仿真,以檢驗(yàn)離線示教的正確性,最后將生成的代碼傳到電池更換機(jī)器人控制器,以控制電池更換機(jī)器人運(yùn)動(dòng),完成電池箱更換任務(wù)。電池更換機(jī)器人離線示教結(jié)構(gòu)圖如圖5所示。
圖5 離線示教結(jié)構(gòu)圖
電動(dòng)汽車電池更換機(jī)器人三維監(jiān)控實(shí)現(xiàn)了與環(huán)境監(jiān)控的深度融合,在電池更換機(jī)器人出現(xiàn)異常情況時(shí)會(huì)觸發(fā)環(huán)境監(jiān)控聯(lián)動(dòng)機(jī)制,通過視頻、消防、聲光報(bào)警等方式記錄處理現(xiàn)場情況,并通過內(nèi)部預(yù)置的處理策略為用戶實(shí)時(shí)提供相應(yīng)的解決方案或自動(dòng)進(jìn)行異常事務(wù)處理,并在三維監(jiān)控畫面上得到實(shí)時(shí)響應(yīng)。
人機(jī)交互界面采用跨平臺語言Qt4[6]進(jìn)行設(shè)計(jì)和實(shí)現(xiàn),用戶在組態(tài)軟件中對三維場景進(jìn)行配置,設(shè)定各個(gè)模型的初始狀態(tài),并保存成xml格式的配置文件。三維實(shí)時(shí)監(jiān)控軟件讀取配置文件和模型文件并通過OpenGL渲染顯示。軟件具有人性化操作方式和友好的交互界面,用戶在三維實(shí)時(shí)監(jiān)控畫面上只需通過鼠標(biāo)的簡單操作就可以對三維監(jiān)控畫面進(jìn)行平移、縮放、旋轉(zhuǎn)等操作,進(jìn)而實(shí)現(xiàn)對設(shè)備的全方位監(jiān)控。
三維實(shí)時(shí)監(jiān)控技術(shù)已在電動(dòng)汽車充換電示范站中得到了較好的應(yīng)用,運(yùn)行情況表明,通過三維全景實(shí)時(shí)監(jiān)控界面,用戶可以方便地查看整個(gè)電池箱更換過程、電池箱充電狀態(tài)、電池架上有無電池箱、汽車運(yùn)動(dòng)狀態(tài)等等,三維監(jiān)控畫面如圖6所示,而且當(dāng)現(xiàn)場設(shè)備出現(xiàn)異常時(shí)環(huán)境監(jiān)控可以進(jìn)行實(shí)時(shí)聯(lián)動(dòng),并通過三維畫面實(shí)時(shí)展示聯(lián)動(dòng)情況。三維實(shí)時(shí)監(jiān)控極大地彌補(bǔ)了二維符號監(jiān)控的不足,同時(shí)給人以身臨其境的自然感受。
圖6 換電站三維全景實(shí)時(shí)監(jiān)控圖
電動(dòng)汽車電池更換機(jī)器人三維實(shí)時(shí)監(jiān)控不僅為用戶提供了更加直觀的監(jiān)控畫面,而且為用戶提供了電池更換機(jī)器人離線示教等高級服務(wù),使電池更換機(jī)器人能夠更加高效安全運(yùn)行;對本設(shè)計(jì)進(jìn)行一定的擴(kuò)展,可以應(yīng)用到充換電設(shè)施領(lǐng)域其他設(shè)備的監(jiān)控中,更好地服務(wù)于電動(dòng)汽車充換電設(shè)施的建設(shè),進(jìn)一步促進(jìn)電動(dòng)汽車的快速、健康發(fā)展。
[1] 黃李, 張維戈, 姜久春. 2008年奧運(yùn)會(huì)電動(dòng)汽車充電站規(guī)劃及運(yùn)營模式方案[J]. 現(xiàn)代交通技術(shù), 2007(4).
[2] Balkan T. Proweld: An off-line welding robot programming package with an interactive graphical interface[J].International Journal of Material and Product Technology,1997, 12(S4-6): 364-372.
[3] Shreiner D. 徐波, 譯. OpenGL編程指南[M]. 北京: 機(jī)械工業(yè)出版社, 2008.
[4] 顧兵. XML實(shí)用技術(shù)教程[M]. 清華大學(xué)出版社, 2007.
[5] 戴文進(jìn), 劉靜. 機(jī)器人離線編程系統(tǒng)[J]. 科技前沿與學(xué)術(shù)評論, 2003.4.
[6] 蔡志明, 盧傳富, 李立夏, 等. 精通Qt4編程[M]. 電子工業(yè)出版社, 2008.