999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于OpenMP的Stewart并聯機器人控制系統*

2016-08-22 12:11:19于慧莉
傳感器與微系統 2016年7期
關鍵詞:振動

李 昂, 韓 康, 霍 琦, 于慧莉

(1.中國科學院 長春光學精密機械與物理研究所,吉林 長春 130033;2.國網吉林省電力有限公司 長春供電公司,吉林 長春 130000)

基于OpenMP的Stewart并聯機器人控制系統*

李 昂1, 韓 康1, 霍 琦1, 于慧莉2

(1.中國科學院 長春光學精密機械與物理研究所,吉林 長春 130033;2.國網吉林省電力有限公司 長春供電公司,吉林 長春 130000)

針對Stewart并聯機器人控制難度大的問題,實現了一種基于OpenMP的Stewart并聯機器人上位機控制系統,對機器人實現了快速有效直觀的振動控制。系統共包含了動力學解算模塊、數據傳輸模塊和人機交互模塊,不僅能夠準確地計算出振動數據,控制機器人振動,而且也設計了簡潔明了的用戶界面,提升用戶體驗。為了提高軟件的執行效率,還加入了OpenMP多線程并行計算技術加速控制算法,最高達到了2.18倍的加速比。驗證了軟件計算的正確性、控制的穩定性和執行的高效性。

并聯機器人; OpenMP; 并行計算; 控制軟件; 動力學

0 引 言

Stewart平臺并聯機器人是一種廣受關注的機器人構型,它具有精度高、剛度大、動態響應好等優點,因而在航空航天等領域應用較為廣泛[1]。Stewart平臺由上下兩個平臺構成,其中,上平臺為動平臺,下平臺為定平臺,兩個平臺間由6條支腿相連,支腿的長度是可變化的,6條支腿長度變化合成實現動平臺的運動[2]。基于Stewart構型的振動機器人在工程應用中有很高的實用性和研究意義[3]。

傳統機器人的振動控制大都直接靠硬件實現,學習成本高且靈活性較低,本文針對這個問題實現了一種基于OpenMP技術的Stewart并聯機器人控制軟件,既能正確控制機器人振動,也降低了機器人控制的難度[4]。

1 控制系統的總體設計

機器人控制系統由上位機控制系統+下位機數字信號處理器(digital signal processor,DSP)構成,其中,下位機DSP負責接收控制系統傳來的振動數據,并按照這些數據控制機器人各支腿的電流輸出,從而實現振動。控制系統的核心為上位機軟件,通過軟件計算出一定初始條件下的振動數據,并通過PC串口傳送給DSP,同時,控制系統實時接收由下位機傳回的機器人傳感器數據,以實現閉環控制。除了數據傳輸外,命令傳輸也由控制系統執行。其流程圖如圖1所示。其功能圖如圖2所示。

2 控制系統的設計與實現

2.1 數據通信與傳輸模塊

考慮到機器人控制信息吞吐量較低,且對信息可靠性要求較高,軟件選擇基于RS—232標準的串口通信方式。數據通信傳輸模塊的主要功能見圖2。

圖1 控制系統的系統流程圖Fig 1 System flowchart of control system

圖2 控制系統功能圖Fig 2 Function chart of control system

2.1.1 串口自動查詢和連接

實際應用中,為了達到更好的用戶體驗,系統中串口的查詢和連接無需用戶操作,而是由后臺自動完成的。Windows操作系統會將可用的串口信息存儲在注冊表的“HKEY_LOCAL_MACHINE/HARDWA RE/DEVICEMAP/SERIALCOMM”這一表項中,在控制平臺創建成功后,后臺會自動訪問這一表項,找出可以連接的串口并讀取相應的參數,若存在這樣的串口,則軟件會創建一個新的串口變量,并將連接參數賦給這個串口變量,之后的通信操作都由這個變量完成;若不存在這樣的串口,則重復執行上述操作直到用戶選擇退出程序或者找到可用串口[5]。

2.1.2 數據和命令幀的封裝

為了防止數據在傳輸過程中丟失或出錯,系統將待傳輸的數據封裝成幀,為了方便解析,系統將數據和命令采用同一種幀格式封裝,幀格式如表1所示。

表1 幀格式與各標識長度表Tab 1 Format of frame and length of each mark

每個幀的長度為9~255字節,幀的類型定義了此幀是命令幀還是數據幀;幀的長度定義了幀的有效內容有多少個字節,只有當幀為數據幀時,這個標識才有意義,若此幀為命令幀,則長度固定位1;校驗和為對幀內容的校驗,確保傳輸內容沒有出錯;幀頭和幀尾均為固定的兩字節。幀封裝結束后,系統就會將其通過串口進行發送。

2.2 人機交互模塊

本系統設計了以繪圖功能和數據存取功能為核心的功能模塊,提升用戶體驗。

2.2.1 力值曲線繪制功能

動力學逆解算出每條支腿的振動數據,包括加速度值和力值[6]。但是這些值若未經驗證直接發送至DSP控制器上,就可能發生因錯點而導致的振動異常,在振動過程中這種異常是很難準確定位的,因此,在數據通信之前,將力值曲線繪制在圖片上,就能直觀地觀測到各個曲線的極值和趨勢等,盡量避免上述異常的發生。

本系統基于C#.Net平臺來設計用戶界面,其中繪圖功能的開發基于ZedGraph控件,它能夠繪制曲線圖和柱狀圖[7]。ZedGraph控件繼承自FrameWork框架中的UserControl Interface,因而它可以像C#.Net提供的其他控件一樣進行拖放操作。當動力學逆解結束后,就會啟動繪圖流程,首先,在ZedGraph控件中生成圖層,再在圖層中聲明六條曲線,每條曲線綁定一個力值數組;然后,將每條曲線的力值按照振動的先后次序插入到各自的力值數組中;最后,檢測是否有點超出當前的顯示范圍,若有,則重繪坐標軸使其能夠正常顯示。

2.2.2 數據存取功能

并聯平臺振動形式的復雜性決定了初值的細微不同可能會造成結果的巨大差異,為了實現振動的可重復性,系統提供了振動初始條件的存取功能。系統采用FileStream類提供的文件流讀寫方法對初始條件進行保存和讀取[8]。

2.3 動力學逆解模塊

2.3.1 動力學逆解

動力學逆解是指已知某一時刻并聯平臺的位姿,平臺速度和加速度,求解施加在每條支腿上的驅動力大小[9]。設施加在鉸鏈上廣義力為

(1)

引入拉格朗日系數λ后,可推出廣義力以及相應的廣義驅動力之間關系的規范形式為

(2)

式中τ代表廣義驅動力,m代表主動關節的數目。在得到各個支腿的動力學模型后,整理可得動力學逆解方程

(3)

式中Qe為所求的廣義力[10]。

2.3.2 OpenMP并行計算

并聯平臺的一次振動需要求多個振動點的力值以形成至少一個周期的循環振動。而每次求廣義力都要進行一次動力學逆解運算,這個循環求解過程是極為耗時的。對這個循環進行進一步分析發現每次循環求解之間是相互獨立的,因此,考慮將這個循環進行OpenMP并行分解加速程序執行[11]。

OpenMP并行計算的原理是將循環體拆分成多個獨立的任務,這些任務由CPU或者GPU上的多個計算核心同時計算完成,其原理圖如圖3所示[12]。

圖3 并行計算原理圖Fig 3 Principle chart of parallel computing

從上圖中可以看出,串行計算時,設共有m×n個任務,每個任務的執行時間為1,則串行計算總的計算時間為

Ts=m×n

(4)

采用并行計算后,將這些任務分配到m個線程上,每個線程執行n個任務,則并行計算總的計算時間為

Tp=T1=T=…=Tm=Ts/m=n

(5)

可以看出:采用并行計算后,理論上總的計算時間縮短為原來的1/m,其中,m為參與并行計算的線程數目。這就大大提高了計算效率,縮短計算時間[13]。

3 并聯機器人控制軟件實驗結果分析

為了驗證力值運算結果的正確性,軟件運行了與Matlab軟件相同的一組算例,并將計算結果作對比,其結果如圖4、圖5所示[14]。

圖4 并聯機器人控制軟件運算結果Fig 4 Computing result of parallel robots control software

圖5 Matlab運算結果Fig 5 Computing result of Matlab

從圖中可以看出,每條支腿的曲線走勢,極值完全一致,進一步,采用ultraCompare軟件對結果進行對比,發現其極差小于等于10-6,證明系統的運算結果是完全正確的。

最后,驗證了OpenMP并行計算對于效率的提升,實驗采用的計算機處理器為IntelCoreI7 2670QM處理器,其硬件規格為四核心八線程,實驗結果如表2所示。

表2 并行計算時間表格Tab 2 Time of parallel computing

由表2中可以看出:在保證計算準確性的前提下,開啟多線程并行計算后,計算時間會隨著參與并行計算線程數目的增加而縮短,其加速比也會隨之大幅增加。可見,并行計算對提升計算效率起到了很大作用。

4 結束語

本文設計并實現了基于OpenMP的Stewart并聯機器人控制系統。對系統中的各個重要功能模塊進行了分析和說明。進行了一系列實驗驗證了并行計算的正確性和高效性。機器人能夠在控制系統的操作下實現較為精確,靈活的振動,為并聯機器人振動的研究和發展奠定了良好的基礎。

[1] 高 洪,趙 韓.并聯機器人機構學理論研究綜述[J].安徽工程科技學院學報:自然科學版, 2006(1):73-79.

[2] Su Y X,Duan B Y,Zheng C H,et al.Disturbance-rejection high-precision motion control of a Stewart platform[J].Control Systems Technology,2004,12(3):364-374.

[3] 王 憲,楊國梁,張方生,等.基于牛頓—拉夫遜迭代法的6自由度機器人逆解算法[J].傳感器與微系統,2010,29(10):116-118.

[4] 劉瑞梅,劉鐵英,韓曉毅.注冊表管理的C#方法[J].河北建筑工程學院學報,2009,27(4):108-111.

[5] 翟希述,王寶興,范 淼.基于Visual C#的串口通信程序設計[J].電子科技,2011,24(2):24-26.

[6] Aleksander G,Krzysztof H,Gabriel K,et al.Motion analysis of mechatronic equipment considering the example of the Stewart platform[J].Solid State Phenomena,2015,220-221:479-484.

[7] 朱亦鋼.應用Zedgraph高效開發數據圖表[J].電腦編程技巧與維護,2009(12):59-61.

[8] 曾 輝.基于C#的文件處理[J].軟件導刊,2006(9):44-45.

[9] 徐 鵬.六自由度并聯機構Stewart平臺的動力學建模與仿真[D].重慶:重慶大學,2005.

[10] 單 鵬,謝里陽,田萬祿,等.基于D—H矩陣的Stewart型并聯機床位姿誤差計算模型[J].機械工程學報, 2010,46(17):186-191.

[11] LaSalle D,Karypis G.Multi-threaded graph partitioning[C]∥IEEE the 27th International Symposium on Parallel & Distributed Processing(ISPDP),2013:225-223.

[12] 方先康.多核多線程處理器環境下軟件系統的設計與實現[D].北京:北京郵電大學,2008.

[13] 陳 昊.基于OpenMP的并行蟻群算法求解協同空戰火力分配[J].傳感器與微系統,2013,32(1):20-24.

[14] 賈振元,褚宏飛,劉 巍,等.基于Stewart結構六維大力傳感器的性能分析及結構優化[J].儀器儀表學報,2010,31(2):341-346.

Control system of Stewart parallel robot based on OpenMP*

LI Ang1, HAN Kang1, HUO Qi1, YU Hui-li2

(1.Changchun Institute of Optics,Fine Mechanics and Physics,Chinese Academy of Science,Changchun 130033,China; 2.State Grid Electric Power Co in Changchun,Jilin Province Power Company,Changchun 130000,China)

Aiming at problem of great control difficulty of Stewart parallel robot,implement an upper PC control system of Stewart parallel robot based on openMP,which achieves fast,efficient and intuitive vibration control on robot.This system contains solution module of dynamics,data transmission module and Human-Computer Interaction module,it not only can accurately calculate vibration data,control robot vibration but also contains a concise User Interface to improve user’s experience.Multi-thread parallel computation technology acceleration control algorithm is also used to improve software efficiency based on OpenMP which achieves 2.18 speedups.A series of tests are executed to prove the correctness of software computation,stability of control and high efficiency of execution.

parallel robot; OpenMP; parallel computation; control software; dynamics

10.13873/J.1000—9787(2016)07—0067—03

2016—06—19

國家自然科學基金資助項目(11302222);中國科學院長春光學精密機械與物理研究所創新基金資助項目(Y4CX1SS141)

TP 319

A

1000—9787(2016)07—0067—03

李 昂(1988-),男,吉林省白城人, 碩士,實習研究員,從事計算機科學與技術、高性能計算方向研究。

猜你喜歡
振動
振動的思考
科學大眾(2023年17期)2023-10-26 07:39:14
某調相機振動異常診斷分析與處理
大電機技術(2022年5期)2022-11-17 08:12:48
振動與頻率
天天愛科學(2020年6期)2020-09-10 07:22:44
This “Singing Highway”plays music
具非線性中立項的廣義Emden-Fowler微分方程的振動性
中立型Emden-Fowler微分方程的振動性
基于ANSYS的高速艇艉軸架軸系振動響應分析
船海工程(2015年4期)2016-01-05 15:53:26
主回路泵致聲振動分析
UF6振動激發態分子的振動-振動馳豫
計算物理(2014年2期)2014-03-11 17:01:44
帶有強迫項的高階差分方程解的振動性
主站蜘蛛池模板: 中文字幕无码av专区久久| 精品福利网| 久久人搡人人玩人妻精品| av天堂最新版在线| 亚洲视频色图| 高清乱码精品福利在线视频| 亚洲成网站| 久久精品国产国语对白| 高清无码一本到东京热| 在线无码av一区二区三区| av在线无码浏览| 日韩成人高清无码| 国产在线98福利播放视频免费| 国产菊爆视频在线观看| 国产三级国产精品国产普男人| 99re免费视频| av午夜福利一片免费看| 蜜桃臀无码内射一区二区三区 | 久久精品丝袜| 手机在线国产精品| 在线综合亚洲欧美网站| 国产精品页| 久久午夜影院| 国产人妖视频一区在线观看| 久久精品最新免费国产成人| 伊人大杳蕉中文无码| 久久青青草原亚洲av无码| 曰韩人妻一区二区三区| 国产熟睡乱子伦视频网站| 一区二区影院| 亚洲午夜18| 日本成人在线不卡视频| 国产微拍一区二区三区四区| 亚洲精品国产精品乱码不卞| 亚洲欧美日韩视频一区| 精品国产Ⅴ无码大片在线观看81| 蜜桃视频一区| 久久综合婷婷| 精品视频在线观看你懂的一区 | 久久综合亚洲色一区二区三区| 亚洲国产一区在线观看| 国产精品嫩草影院av| 久久99热66这里只有精品一| 无码专区第一页| 91久久国产热精品免费| 亚洲精品无码成人片在线观看| 欧美中文字幕一区| 亚洲无码37.| 国产乱人激情H在线观看| 亚洲制服丝袜第一页| 伊人天堂网| 日韩av在线直播| 性欧美精品xxxx| 亚洲成在线观看| 国产成人久视频免费| 有专无码视频| 亚洲免费毛片| 亚洲成年人网| 久久精品无码中文字幕| 久久综合伊人77777| 91蜜芽尤物福利在线观看| 精品三级网站| 成人精品午夜福利在线播放| 国产精品第| 国产在线拍偷自揄拍精品| 青草视频久久| 日韩国产精品无码一区二区三区 | 毛片大全免费观看| 久久精品国产亚洲AV忘忧草18| 热久久综合这里只有精品电影| 欧美一区二区人人喊爽| 国产成人亚洲精品蜜芽影院| 国产亚洲精品97在线观看| 五月婷婷中文字幕| 亚洲人成网站在线播放2019| 老司国产精品视频91| 国产精品亚欧美一区二区三区| 亚洲中文字幕久久无码精品A| 欧美日韩国产精品va| 国产亚洲欧美日韩在线一区二区三区| 亚欧美国产综合| 国产精品毛片一区|