摘要:本文為系統分析師案例分析真題,圍繞某宇航設備公司工業機器人研制平臺選型展開,討論 ROS 與公司現有嵌入式實時操作系統的選用爭議,包含三大問題:兩者異同對比、ROS 三種通信方式特點匹配、ROS 節點通信架構圖補充。
閱讀以下關于機器人操作系統架構的描述,回答問題1至問題3。
案例場景
隨著人工智能技術的發展,工業機器人已成為當前工業界的熱點研究對象。某宇航設備公司為了擴大業務范圍,決策層研究決定準備開展工業機器人研制新業務。公司將論證工作交給了軟件架構師王工,王工經過分析和調研,從機器人市場現狀、領域需求、組成及關鍵技術和風險分析等方面開展了綜合論證。論證報告指出:首先,為了保障本公司機器人研制的持續性,應根據領域需求選擇一種適應的設計架構;其次,為了規避風險,公司的研制工作不能從零開始,應該采用國際開源社區所提供機器人操作系統(RobotOperating System, ROS)作為機器人開發的基本平臺。
在討論會上,架構師李工提出不同意見,他認為公司針對宇航領域已開發了某款嵌入式實時操作系統,且被多種宇航裝備使用,可靠性較高。因此應該采用現有架構體系作為機器人的開發平臺。會上王工說明了機器人操作系統與該款操作系統的差別,要沿用需要進行改造,投入較大。經過激烈討論,公司領導同意了王工采用 ROS 的意見。
問題內容:
[問題1] (5分)
王工擬采用的 ROS 具有分布式進程框架,以點對點設計以及服務和節點管理器方式,使得執行程序可以各自獨立地設計,松散地、實時地組合起來。這些進程可以按照功能包和功能包集的方式分組,因而可以容易地分享和發布。請用400 字以內文字說明 ROS 與嵌入式實時操作系統的共同點,以及在實時性和任務通信方式兩個方面的差異。
[問題2] (10分)
ROS 為應用程序間通信提供了主題(Topic)、服務(Service)和動作(Action)三種消息通信方式,每種通信方式都有其特點。請將以下給出的三類通信的主要特點填入表 3-1
中(1)-(5)的空白處。
(a)適合用于傳輸傳感器信息(數據流)
(b) 能夠知道是否調用成功
(c)一對多模式
(d)有握手信號
(e)服務執行完會有反饋
(f)可以監控長時間執行的進程
(g) 較復雜
(h)可能讓系統過載(數據太多)
(i)服務執行完之前,程序會等待
(j) 建立通信較慢
(k)可能丟失數據

[問題3]
(10分)
ROS 的架構定義了 ROS 系統由多個各自獨立的節點(組件)組成,并且各個節點之間可以通過發布/訂閱(Publish/Subscribe)消息模型進行通信。圖3-1給出一個簡單機器人結構實例,請根據以下文字描述,補充圖3-1 中(1)~(5)處空白。
“機器人開始階段,所有節點都要注冊(Registration)到Master上,注冊后,攝像頭節點聲明它要發布(Publish)一個叫作/image_data 的消息。另外兩個節點(圖像處理節點和圖像顯示節點)聲明它們需要訂閱(Subscribe)這個/image_data 消息。因此,一旦攝像頭節點收到相機發送的數據(Data),就立即將數據/image_data直接發送到另外兩個節點。

試題答案:
[問題1]
ROS 與嵌入式實時操作系統的共同點:
(1)系統微型化
(2)系統專用性強
(3)軟硬件依賴性強
(4)系統資源受限
ROS 與嵌入式實時操作系統的差異:
實時性:ROS 弱于嵌入式實時操作系統。
通信方式:ROS 的通信方式較為豐富,嵌入式實時操作系統通信方式單一。
[問題2]
完整試題及答案,點擊下方藍字獲取!
軟考備考資料免費領取
去領取
專注在線職業教育25年