欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于多核處理器架構(gòu)的機(jī)器人混合系統(tǒng)應(yīng)用框架的制作方法

文檔序號:9523976閱讀:505來源:國知局
一種基于多核處理器架構(gòu)的機(jī)器人混合系統(tǒng)應(yīng)用框架的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于機(jī)器人領(lǐng)域,涉及一種基于多核處理器架構(gòu)的機(jī)器人混合系統(tǒng)應(yīng)用框架。
【背景技術(shù)】
[0002]機(jī)器人控制是機(jī)器人研究的一個重要領(lǐng)域,其對應(yīng)用程序的需求日趨復(fù)雜,并伴隨著使用各種實時與非實時操作系統(tǒng)來提供系統(tǒng)支持。程序員需要使用操作系統(tǒng)提供的豐富編程資源編寫機(jī)器人控制程序,同時也需要操作系統(tǒng)提供的實時性支持?;贚inux的機(jī)器人操作系統(tǒng)(Robotic Operating System, R0S)就是為了提高機(jī)器人開發(fā)效率所誕生的開源操作系統(tǒng),但Linux的非實時特性限制了機(jī)器人操作系統(tǒng)R0S在機(jī)器人實時控制領(lǐng)域的應(yīng)用。而目前市場上有眾多的實時操作系統(tǒng),由于相對通用操作系統(tǒng)來說,它們大多都是功能單一,系統(tǒng)應(yīng)用資源少,難以方便實現(xiàn)復(fù)雜的應(yīng)用。機(jī)器人開發(fā)者需要在滿足實時性的同時能夠高效地開發(fā)出機(jī)器人應(yīng)用程序。

【發(fā)明內(nèi)容】

[0003]為了解決現(xiàn)有的技術(shù)問題,本發(fā)明提供一種基于多核處理器架構(gòu)的機(jī)器人混合系統(tǒng)應(yīng)用框架。該框架可以應(yīng)用于各種基于ARM/X86多核架構(gòu)的機(jī)器人控制器中,在保證實時性要求的同時,能夠大幅度提高機(jī)器人控制軟件的開發(fā)效率,并降低集成開發(fā)成本。
[0004]此應(yīng)用框架主要由三個部分組成,機(jī)器人操作系統(tǒng)R0S,實時操作系統(tǒng),混合操作系統(tǒng)支撐框架 RGMP(RT0S and GPOS on Mult1-Processor)。
[0005]-機(jī)器人操作系統(tǒng)R0S(含支持機(jī)器人操作系統(tǒng)R0S的非實時操作系統(tǒng),通常是Linux),用于提供基本的機(jī)器人應(yīng)用、相應(yīng)服務(wù)和系統(tǒng)資源。
[0006]-實時操作系統(tǒng),用于提供機(jī)器人實時任務(wù)的服務(wù)和系統(tǒng)資源。
[0007]-混合操作系統(tǒng)支撐框架RGMP,用于支撐機(jī)器人操作系統(tǒng)R0S和實時操作系統(tǒng)的運行和協(xié)調(diào)。
[0008]RGMP是一個在多核處理器上支持實時操作系統(tǒng)和非實時操作系統(tǒng)并行運行的開源支撐框架,它利用SMP (對稱多核體系結(jié)構(gòu))計算機(jī)的中斷路由器獨立分配實時操作系統(tǒng)和非實時操作系統(tǒng)的中斷資源,可以自然地將這些操作系統(tǒng)分別并行運行在各處理器核心上,合理分配處理資源,減小系統(tǒng)耦合,并避免了傳統(tǒng)的共享式混合操作系統(tǒng)因同處一個處理器核心而帶來的資源競爭和切換問題。RGMP開源源碼及文檔見【1】,即:
[0009]http://rgmp.sourceforge.net/wiki/index.php/Main_Page
[0010]混合操作系統(tǒng)支撐框架RGMP包括以下四個系統(tǒng)布置內(nèi)容部分:
[0011]---用戶通過實時應(yīng)用框架RTroscpp實現(xiàn)快速開發(fā)實時機(jī)器人控制程序(可選)。
[0012]—非實時系統(tǒng)與實時系統(tǒng)分別單獨占用多核處理器的不同CPU核心,它們可同時維持各自的應(yīng)用狀態(tài)而不必針對混合操作系統(tǒng)架構(gòu)進(jìn)行優(yōu)化,其運行、調(diào)試均相互獨立。
[0013]—在混合系統(tǒng)運行時,實時與非實時操作系統(tǒng)獨立占有各自的硬件資源。
[0014]—對于共享設(shè)備的調(diào)度通過它們之間的通信來實現(xiàn)。
[0015]本發(fā)明中,實時系統(tǒng)與非實時系統(tǒng)之間使用機(jī)器人操作系統(tǒng)提供R0S的節(jié)點間通信協(xié)議,由RGMP為兩個系統(tǒng)之間提供以共享內(nèi)存為基礎(chǔ)的上層通信接口,其中包括:
[0016]---實時與非實時系統(tǒng)之間的標(biāo)準(zhǔn)TCP/IP協(xié)議棧;
[0017]—實時系統(tǒng)調(diào)試信息打印管道;
[0018]3個用戶自定義接口。
[0019]本發(fā)明中應(yīng)用框架的幾個特征包括:
[0020]—實時與非實時系統(tǒng)分別使用計算機(jī)內(nèi)存中不同的內(nèi)存地址段。
[0021]---系統(tǒng)間外部設(shè)備中斷相互獨立,無共享,中斷通過ARM/X86多核中提供的中斷路由器進(jìn)行獨立分配。
[0022]—實時系統(tǒng)與非實時系統(tǒng)均使用標(biāo)準(zhǔn)的R0S編程與通信接口,在整個機(jī)器人系統(tǒng)中應(yīng)用和控制程序都是以標(biāo)準(zhǔn)R0S節(jié)點的形式運行,可以由R0S統(tǒng)一管理,節(jié)點之間通過R0S標(biāo)準(zhǔn)通信接口進(jìn)行通信。
[0023]—用戶可以將原來運行在R0S上的不依賴第三方函數(shù)庫的節(jié)點程序直接放置到實時系統(tǒng)運行。用戶使用R0S機(jī)器人操作系統(tǒng)編寫的機(jī)器人應(yīng)用程序可以在實時或者非實時設(shè)備上運行。
[0024]—用戶可以利用R0S提供的應(yīng)用資源,使用本發(fā)明對R0S應(yīng)用進(jìn)行的有效擴(kuò)展。其中:
[0025]對于高復(fù)雜度的,同時對實時性要求較低的功能節(jié)點,通過以太網(wǎng)的方式將其運行在裝有R0S標(biāo)準(zhǔn)機(jī)器人操作系統(tǒng)的服務(wù)器當(dāng)中。
[0026]運行在非實時系統(tǒng)上的應(yīng)用程序與運行在實時系統(tǒng)上的機(jī)器人控制程序使用R0S提供的標(biāo)準(zhǔn)通信接口進(jìn)行信息交互。
[0027]在使用本發(fā)明時,應(yīng)用程序在非實時操作系統(tǒng)部分可直接利用R0S本身的相關(guān)軟件資源,如人機(jī)交互、語音識別、三維建模、建圖導(dǎo)航等任務(wù),也可以獨立編寫程序;在實時系統(tǒng)部分編寫實時應(yīng)用,通過采用實時總線(如CAN(控制器局域網(wǎng)Controller AreaNetwork)總線、倍孚公司EtherCAT總線等)連接電機(jī)驅(qū)動器,完成復(fù)雜電機(jī)運動控制和其他實時性要求較高的任務(wù)。
[0028]根據(jù)本發(fā)明的一個方面,提供了一種基于多核處理器架構(gòu)的機(jī)器人混合系統(tǒng),其特征在于包括:
[0029]機(jī)器人操作系統(tǒng),其包含含支持機(jī)器人操作系統(tǒng)的非實時操作系統(tǒng),用于提供基本的機(jī)器人應(yīng)用、相應(yīng)服務(wù)和系統(tǒng)資源;
[0030]實時操作系統(tǒng),用于提供機(jī)器人實時任務(wù)的服務(wù)和系統(tǒng)資源;
[0031]混合操作系統(tǒng)支撐框架(RGMP),用于支撐機(jī)器人操作系統(tǒng)和實時操作系統(tǒng)的運行和協(xié)調(diào),將非實時操作系統(tǒng)與實時操作系統(tǒng)同時運行在多核處理器平臺上。
[0032]根據(jù)一個進(jìn)一步的方面,在上述機(jī)器人混合系統(tǒng)中,非實時操作系統(tǒng)與實時操作系統(tǒng)分別占用獨立的內(nèi)存空間,所述多核處理器平臺是基于ARM/X86架構(gòu)多核處理器的控制板、控制器和/或工控機(jī)等,所述非實時操作系統(tǒng)可以是Linux,所述實時操作系統(tǒng)可以是 Yuqix0
【附圖說明】
[0033]圖1為本發(fā)明的總體組成結(jié)構(gòu)圖。
[0034]圖2為本發(fā)明的典型控制應(yīng)用示例的連接圖。
[0035]圖3為本發(fā)明的典型應(yīng)用示例中運動控制部分的流程圖。
[0036]圖4為本發(fā)明基于CorteX-A9雙核處理器平臺的中斷資源分配圖。
【具體實施方式】
[0037]下面結(jié)合附圖用示例詳細(xì)說明本發(fā)明技術(shù)方案中所涉及的各個細(xì)節(jié)問題,應(yīng)指出的是,所描述的實例僅旨在便于對本發(fā)明的理解,而對其不起任何限定作用。
[0038]雖然本申請對具體實施例的說明,主要是結(jié)合Linux非實時操作系統(tǒng)和Yuqix實時操作系統(tǒng)進(jìn)行描述的,但可應(yīng)用本發(fā)明的非實時操作系統(tǒng)與實時操作系統(tǒng),不僅限于Linux非實時操作系統(tǒng)和Yuqix實時操作系統(tǒng),而是可以適用于任何其他的非實時操作系統(tǒng)和/或?qū)崟r操作系統(tǒng)。
[0039]請參閱圖1所示的本發(fā)明的一種基于多核處理器架構(gòu)的機(jī)器人混合系統(tǒng)應(yīng)用框架的總體組成結(jié)構(gòu)圖,該機(jī)器人混合系統(tǒng)應(yīng)用框架通過混合操作系統(tǒng)框架RGMP19將Linux系統(tǒng)13與Yuqix實時系統(tǒng)17這兩種不同系統(tǒng)同時運行在基于ARM架構(gòu)的、包含非實時設(shè)備14和實時設(shè)備18的多核處理器平臺上;Linux系統(tǒng)13與Yuqix實時系統(tǒng)17分別占用獨立的內(nèi)存空間。
[0040]Linux系統(tǒng)13是嵌入式系統(tǒng),包含操作系統(tǒng)基本的系統(tǒng)庫SYS LIB131、C語言庫LIBC132、網(wǎng)絡(luò)協(xié)議NET133、BOOST庫134、Linux內(nèi)核135以及驅(qū)動程序136等必要模塊,運行在RGMP (非實時部分)框架191之上,在Linux系統(tǒng)13上層運行的是機(jī)器人操作系統(tǒng)R0S12。在R0S12之上是使用R0S標(biāo)準(zhǔn)接口與R0S工具編寫的非實時R0S應(yīng)用程序節(jié)點11。
[0041]另一方面,Yuqix實時操作系統(tǒng)17中提供了大量符合P0SIX標(biāo)準(zhǔn)的系統(tǒng)調(diào)用接口,它也包含操作系統(tǒng)基本的系統(tǒng)庫SYS LIB171、C語言庫LIBC172、網(wǎng)絡(luò)協(xié)議NET173、BOOST庫174、Yuqix內(nèi)核175以及驅(qū)動程序176等必要模塊。在Yuqix實時系統(tǒng)17之上,用戶可以直接編寫實時R0S應(yīng)用節(jié)點15,也可以依賴RTroscp
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
毕节市| 新巴尔虎左旗| 竹山县| 十堰市| 临沭县| 手游| 南木林县| 曲阜市| 浪卡子县| 梁平县| 和顺县| 家居| 博白县| 义乌市| 都安| 凤庆县| 克什克腾旗| 昌图县| 清远市| 耿马| 如皋市| 德州市| 饶河县| 西峡县| 应城市| 新郑市| 奉节县| 逊克县| 望江县| 双鸭山市| 志丹县| 烟台市| 琼中| 通州区| 辽源市| 瓦房店市| 宝山区| 水城县| 宜都市| 安塞县| 莱西市|