機器人模擬器webots初學者入門教程

在這裏插入圖片描述
Webots GUI由四個主要窗口組成:

  • 顯示並允許您與3D模擬進行交互的3D window(3D窗口)
  • 表示當前世界的層次結構的Scene tree(場景樹)
  • 允許您編輯源代碼的Text editor(文本編輯器)
  • 以及最後,同時顯示編譯和控制器輸出的Console(控制檯)

GUI有九個菜單:File, Edit, View, Simulation, Build, Overlays, Tools, Wizards和Help。

在這裏插入圖片描述

文件菜單(File)

在這裏插入圖片描述
File (文件)菜單允許您執行常規的文件操作:加載,保存等。

  • New World 新世界菜單項目(和按鈕)中只含有模擬窗打開一個新的世界ElevationGrid,顯示爲10×10平方1米×1米的表面上的棋盤。
  • Open World… 打開世界…”菜單項(和按鈕)打開一個文件選擇對話框,該對話框允許您選擇要加載的“ .wbt”文件。
  • 通過Open Recent World 打開最近的世界”菜單項,可以從子菜單中顯示的列表中選擇一個最近打開的“
    .wbt”文件,以重新打開該文件。
  • Open Sample World 打開示例世界”菜單項將打開一個對話框,列出所有可用的示例世界,在其中可以通過在搜索字段中輸入文件名或其中的一部分來搜索要加載的特定“
    .wbt”文件。
  • Save World 保存世界”菜單項(和按鈕)使用當前文件名(顯示在主窗口頂部的文件名)保存當前世界。在每個Save.wbt文件的內容上都將被覆蓋,Webots不會創建任何備份副本,因此,您應謹慎使用此按鈕,並最終手動進行安全副本。
  • Save World As… 另存爲…”菜單項(和按鈕)使用用戶輸入的新文件名保存當前世界。請注意,“。wbt”文件應始終保存在Webots項目目錄以及“worlds”子目錄中,否則將無法重新打開該文件。
  • Reload World 重新加載世界”菜單項(和按鈕)從已保存的版本重新加載當前世界,並從頭開始重新進行仿真。
  • Reset Simulation 復位仿真菜單項目(和按鈕)恢復模擬的初始狀態。仿真並沒有像重新加載一樣完全被破壞和重建,但是所有節點的初始狀態都得以恢復,這要快得多。
  • New Text File 新建文本文件”菜單項(和按鈕)在文本編輯器中打開一個空文本文件。
  • Open Text File… 打開文本文件…”菜單項(和按鈕)打開一個文件選擇對話框,該對話框允許您選擇要加載的文本文件(例如“ .java”文件)。
  • Save Text File 保存文本文件”菜單項(和按鈕)將保存當前文本文件。
  • Save Text File As… 將文本文件另存爲…”菜單項(和按鈕)使用用戶輸入的新文件名保存當前文本文件。
  • Save All Text Files 將保存所有文本文件菜單項保存所有打開的和未保存的文本文件。
  • Revert Text File 還原文本文件”菜單項(和按鈕)從保存的版本中重新加載文本文件。
  • Print Preview… 打印預覽…”菜單項打開一個窗口,可讓您管理頁面佈局,以便從文本編輯器中打印文件。
  • Print… 打印…”菜單項打開一個窗口,使您可以打印文本編輯器的當前文件。
  • Import VRML97… 導入VRML97…菜單項,在現場樹的末尾添加VRML97對象。這些對象來自您必須指定的VRML97文件。此功能對於導入在3D建模程序中建模的複雜形狀,然後導出到VRML97(以前稱爲VRML
    2.0)非常有用。大多數3D建模軟件,例如3D Studio Max,Maya,AutoCAD,Pro Engineer,AC3D或Art Of Illusion,都包含VRML97(或VRML 2.0)導出功能。請注意,Webots無法以VRML
    1.0格式導入文件。導入後,這些對象將在場景樹的底部顯示爲Group,Transform或Shape節點。然後,您可以將這些對象轉換爲Webots節點(例如Solid,Robot等),或將它們剪切並粘貼到children現有Webots節點列表中。
  • Export VRML97… 導出VRML97…項目讓您當前載入世界保存爲“.WRL”的文件,符合VRML97標準。反過來,可以使用任何VRML97查看器和大多數3D建模軟件打開此類文件。
  • 使用Take Screenshot…
    “截取屏幕截圖…”項可以截取Webots中當前視圖的截屏。它會打開一個文件對話框,將當前視圖另存爲PNG或JPG圖像。
  • Make Movie… 製作電影…項允許你創建MPEG電影(Linux和MacOS)或AVI動畫(Windows)中。電影錄製開始後,將在中更改此項Stop
    Movie…。在錄製期間,可以更改運行模式並暫停模擬。但是,僅在Webots步驟期間捕獲幀,而在暫停模擬時不捕獲。除了選擇影片的分辨率和壓縮質量外,還可以通過設置動畫來以加速模式或慢動作記錄模擬。Video
    acceleration彈出對話框中的值。如果視頻加速度值小於1,則錄製的動畫將比模擬慢。最大減慢速度,即最小加速度值,是由模擬的基本時間步長定義的,因爲不可能以比模擬更新率更高的幀率進行記錄。爲了增加最大的減慢速度,您應該減少仿真的基本時間步長。選中視頻字幕選項將在電影的右上角顯示加速度值。
  • Export HTML5 Model… 導出HTML5模型…”項允許您將當前世界導出爲交互式3D“ .html”文件。您可以在本節中獲得有關此主題的更多信息。
  • Make HTML5 Animation… 製作HTML5動畫…”項使您可以將模擬記錄爲3D動畫並將其發佈在HTML5網頁上。開始動畫錄製後,此項目將更改爲Stop HTML5
    Animation…,可用於停止動畫錄製。您可以在本節中獲得有關此主題的更多信息。
  • Quit 退出將終止當前的模擬並關閉Webot。

注意:在Windows上,使用“退出”代替“退出”。

編輯菜單(Edit)

在這裏插入圖片描述

“ 編輯”菜單提供了常用的文本編輯功能,可操縱在“ 文本”編輯器中打開的文件,例如“複製”,“粘貼”,“剪切”等。

查看菜單(View)

在這裏插入圖片描述
使用“View (查看)”菜單可以控制模擬窗口中的查看。

  • Follow Object (跟隨對象)子菜單可固定的(靜態)視點和跟隨移動對象(通常是一個機器人)的視點之間切換。如果希望視點跟隨對象,則首先需要用鼠標選擇對象,然後根據所需的以下行爲檢查子菜單中的一項。

  • 在這裏插入圖片描述Restore Viewpoint (加載或還原文件)後,“ 還原視點”項會將視點的位置和方向恢復爲其初始設置。當您在場景中導航時迷路並想要返回原始視點時,此功能非常方便。
    -在這裏插入圖片描述 Move viewpoint to object(將視點移至對象)會將視點移至中心並在選定節點上縮放。如果所選項目是字段,則將定位上級父節點。該對象將位於3D視圖的中心,並且將完全可見。

  • 在這裏插入圖片描述Change View (更改視圖)子菜單移動視點對準它在任何所選擇的對象周圍的世界六大對齊軸。如果未選擇任何對象,則視點將以世界原點爲中心。可用的選項爲
    在這裏插入圖片描述前視圖, 在這裏插入圖片描述後視圖, 在這裏插入圖片描述左視圖, 在這裏插入圖片描述右視圖, 在這裏插入圖片描述頂視圖和 在這裏插入圖片描述底視圖。

  • Fullscreen“ (全屏)”項啓用和禁用在整個屏幕上顯示3D窗口。

  • Virtual Reality Headset(虛擬現實耳機)子菜單允許你使用虛擬現實的耳機,如HTC萬歲或Oculus Rift以查看模擬:

  • 將啓用選項允許你切換模擬視圖耳機。

  • “ 跟蹤頭戴式耳機位置”和“ 跟蹤頭戴式耳機方向”項目指定是否應跟蹤頭戴式耳機的位置和方向並將其應用於視點。

  • “ 查看左眼”,“ 查看右眼”和“
    空視圖”單選按鈕使您可以選擇在模擬視圖中應顯示的內容。您可以看到左眼圖像,右眼圖像或什麼都看不到。 使用“
    抗鋸齒”項可以在兩隻眼睛的圖像上啓用抗鋸齒(請注意,抗鋸齒會降低仿真速度)。

  • 通過“ 投影”單選按鈕組,可以在“ 透視投影”(默認)和“ Webots模擬”窗口的“
    正投影”模式之間進行選擇。該透視模式對應於天然投影:其中所述更遠的對象是從觀察者,較小它出現在圖像中。使用正交投影時,與查看者的距離不會影響物體的大小。此外,在正交模式下,模型中平行的線在屏幕上平行繪製,因此,此投影有時在建模階段很有用。在正交模式下不會渲染陰影。

  • “ 渲染”單選按鈕組使您可以在“ 普通渲染”(默認)和“ Webots模擬” 的“
    線框”模式之間進行選擇。在普通渲染模式下,對象以其幾何面,材質,顏色和紋理進行渲染,其方式與通常用眼睛或照相機看到的方式相同。在線框渲染模式下,只有可呈現圖元的段被渲染。此模式對於調試網格很有用。如果線框渲染模式和View
    / Optional Rendering / Show All Bounding
    Objects切換按鈕均被激活,則僅繪製邊界對象(不渲染可渲染圖元)。這可用於調試衝突檢測問題。

  • 在可選的渲染子菜單,可以顯示或隱藏,補充信息。這些渲染僅顯示在主渲染中,並隱藏在機器人攝像機中。它們用於更好地瞭解模擬的行爲:

  • 使用“ 顯示座標系”,可以將3D窗口右下角的全局座標系顯示或隱藏爲分別代表x,y和z軸的紅色,綠色和藍色箭頭。

  • 使用“顯示所有邊界對象”,可以顯示或隱藏所有邊界對象(在每個Solid節點的boundingObject字段中定義)。邊界對象由白線表示。當發生碰撞時,這些線變爲玫瑰,而當實體處於空閒狀態(即,它靜止不與任何其他活動的實體相互作用)時,這些線變爲藍色。

  • "顯示接觸點”使您可以顯示或隱藏由碰撞檢測引擎生成的接觸點。沒有示出沒有產生相應的接觸力的接觸點。接觸力僅對使用物理模擬的對象生成(需要物理節點)。需要考慮此操作的步驟。

  • 使用顯示連接器軸可以顯示或隱藏連接器軸。旋轉對齊方式顯示爲黑色,而y和z軸分別顯示爲綠色和藍色。

  • 使用“ 顯示關節軸”可以顯示或隱藏關節軸。關節軸用黑線表示。

  • 所述顯示測距儀平截頭體,可以顯示或隱藏,OpenGL的平截頭體剔除和場景中的每個測距儀所記錄的圖像,使用黃色線框。如果測距儀設備被禁用或第一張圖像尚不可用,則視錐將以灰色繪製。OpenGL剔除視錐是與測距儀視場相對應的截頂金字塔。記錄的圖像顯示在視錐臺所描述的平面上,其距離對應於距設備中心的測距儀的最小範圍。有關此概念的更多信息,請參見OpenGL文檔。

  • 使用“顯示激光雷達路徑”,您可以使用青色線框顯示或隱藏場景中每個激光雷達的圖層(激光射線路徑)。如果禁用了激光雷達設備或尚無法進行第一次測量,則將這些層繪製爲灰色。

  • 該展會激光雷達點雲,可以顯示或隱藏,對於每一個激光雷達點雲點雲模式下啓用的場景。點雲由這些點本身的位置以及從激光雷達原點到這些點的光線(從藍色(頂層)到紅色(底層)的漸變)表示。這種可選的渲染在計算上很昂貴,因此會大大降低仿真速度。請注意,如果點雲包含超過2500個點,則不會顯示從激光雷達原點到該點的射線。

  • “顯示攝像機視錐”允許您使用洋紅色線框顯示或隱藏場景中每個攝像機的OpenGL消隱視錐和記錄的圖像。如果禁用了相機設備或第一張圖像尚不可用,則視錐將以灰色繪製。OpenGL剔除視錐是與攝像機視場相對應的截頂金字塔。由於遠端平面設置爲無窮大,因此未顯示金字塔的背面。記錄的圖像顯示在相機的近平面上。有關此概念的更多信息,請參見OpenGL文檔。

  • 所述顯示DistanceSensor射線,可以顯示或隱藏,光線由距離傳感器設備鑄造。這些光線繪製爲紅線(在碰撞點之外變爲綠色)。它們的長度對應於設備的最大範圍。如果距離傳感器設備被禁用或尚無法進行第一次測量,則光線將以灰色繪製。

  • Show Light Positions(顯示LightSensor射線),可以顯示或隱藏,光線鑄造由光傳感器裝置。這些射線繪製爲黃線。如果禁用了光傳感器設備或尚無法進行第一次測量,則光線將以灰色繪製。

  • Show Pen Painting Rays (顯示光位置)”允許您顯示或隱藏PointLight和SpotLight燈的位置。 沒有顯示DirectionalLight節點。
    PointLight和SpotLight節點由被耀斑圍繞的彩色圓圈表示。

  • “ 顯示筆繪畫射線”使您可以顯示或隱藏筆設備繪畫的射線。如果啓用繪畫,這些光線將繪製爲紫線,否則繪製爲灰線。

  • Show Radar Frustum(顯示雷達視錐)”允許您顯示或隱藏雷達視錐。如果啓用了雷達設備,則視錐表將顯示爲藍色,否則,如果禁用了雷達或尚無法進行首次測量,則視錐表將顯示爲灰色。雷達視錐表代表雷達可以在其中檢測目標的體積。

  • Show Center Of Mass (顯示重心)”使您可以顯示或隱藏具有非NULL 物理節點的選定實體的全局重心。重心呈深藍色。

  • Show Center Of Buoyancy(顯示浮力中心)”使您可以顯示或隱藏具有非NULL 物理節點的選定實體的整體浮力中心。浮力中心以紫色渲染。

  • Show Support Polygon(使用顯示支撐多邊形),可以顯示或隱藏具有非NULL
    物理節點的選定實體的支撐多邊形。所謂支撐多邊形,是指實體的接觸點的凸包在水平平面上的投影,該平面包含最低的多邊形。此外,如果質心在後面的平面中的投影位於支撐多邊形內(靜態平衡),則呈綠色,否則呈紅色。此渲染選項僅可用於頂部沒有其他實體的實體。

  • 如果啓用了Disable selection (禁用選擇)選項,則它會阻止您在單擊3D窗口時更改所選的實體節點。當您要更改視點而不修改場景樹中的可見字段和選定字段時,這在建模階段特別有用。

  • 如果啓用了Lock Viewpoint“ (鎖定視點)”選項,則可以阻止您在3D窗口上拖動鼠標或移動鼠標滾輪時更改“
    視點”節點的位置和方向。當您不想意外更改視點的位置和方向時,此功能特別有用。

注意:“按對象”,“按對象和旋轉”,“ 投影”,“ 渲染”,“ 可選渲染項目”,“ 禁用選擇”和“ 鎖定視點”選項按每個世界保存,而其他選項爲全局。

模擬菜單(Simulation)

該模擬菜單用於控制模擬模式。

  • 在這裏插入圖片描述在暫停Pause菜單項(和按鈕)暫停仿真。
  • 在這裏插入圖片描述“步驟Step”菜單項(和按鈕)執行模擬的一個基本時間步。該步驟的持續時間在WorldInfo節點的basicTimeStep字段中定義,可以在場景樹窗口中進行調整以滿足您的需求。
  • 在這裏插入圖片描述該實時菜單項Real-time(和按鈕),直到它被中斷運行在實時仿真Pause或Step。在運行模式下,場景的3D顯示每n個基本時間步刷新一次,其中ndisplayRefresh在WorldInfo節點的字段中定義。
  • 在這裏插入圖片描述“運行Run”菜單項(和按鈕)類似於Real-time,除了它運行得儘可能快。
  • Fast(和按鈕)是一樣Run,不同的是沒有圖形渲染被執行。由於禁用了圖形渲染(黑屏),因此可以加快仿真速度,因此非常適合CPU密集型仿真(遺傳算法,視覺,學習等)。

構建菜單(Build)

Build 菜單提供的功能,以編譯(或交叉編譯)控制器的代碼。此處將更詳細地描述構建菜單。

疊加菜單(Overlays)

“ 覆蓋”菜單提供特定於渲染設備覆蓋的操作(“ 相機”,“ 顯示”,“” Rangefinder)。僅當在3D窗口中選擇了機械手或模擬中只有一個機械手時,此菜單的某些操作纔有效:

  • Camera Devices (攝像機設備)”子菜單包含所選機器人及其後代機器人的所有攝像機設備的列表,並允許用戶通過選中或取消選中相應項目來顯示或隱藏單個攝像機覆蓋圖像。相機覆蓋層與顯示覆蓋層不同,因爲它們具有洋紅色邊框。請注意,如果Hide All Camera Overlays選中該項目,則與Camera Devices菜單項的狀態無關,攝像頭設備的疊加層在3D視圖中將不可見。Camera Devices,如果在外部窗口通過雙擊它顯示的疊加層的紋理菜單項將被禁用。
  • RangeFinder Devices (測距儀設備) 子菜單包含所有選定的機器人的測距儀設備和其後代機器人的列表,並讓用戶顯示或隱藏由選中或取消選中相應的項的單測距儀的疊加圖像。測距儀疊加層與照相機疊加層不同,因爲它們具有黃色邊框。請注意,如果Hide All RangeFinder Overlays選中該項目,則與RangeFinder Devices菜單項的狀態無關,在3D視圖中將不會顯示測距儀設備覆蓋圖。RangeFinder Devices,如果在外部窗口通過雙擊它顯示的疊加層的紋理菜單項將被禁用。
  • Display Devices (顯示設備)的子菜單包含所選機器人的所有的顯示設備和其後代機器人的列表,並讓通過檢查或取消選中相應的項目的用戶顯示或隱藏單個顯示疊加圖像。顯示覆蓋圖與相機覆蓋圖不同,因爲其青色邊框。請注意,如果Hide All Display Overlays選中該項目,則顯示設備覆蓋圖在3D視圖中將不可見,而與Display Devices菜單項的狀態無關,Display Devices,如果在外部窗口通過雙擊它顯示的疊加層的紋理菜單項將被禁用。

另一方面,以下各項始終處於活動狀態,並適用於世界上所有的機器人:

  • Hide All Camera Overlays (隱藏所有攝像機覆蓋物)”選項可獨立於Camera Devices子菜單中設置的特定機器人設備選項,在3D視圖中隱藏所有攝像機設備覆蓋物。
  • Hide All RangeFinder Overlays (隱藏所有RangeFinder疊加層)”選項獨立於RangeFinder Devices子菜單中設置的特定機器人的設備選項,在3D視圖中隱藏所有相機設備的疊加層。
  • “Hide All Display Overlays (隱藏所有顯示覆蓋圖)”選項可獨立於Display Devices子菜單中設置的特定機器人的設備選項,隱藏3D視圖中的所有顯示設備覆蓋圖。

工具菜單(Tools)

“ 工具”菜單允許您打開各種Webots窗口。
3D View 3D視圖菜單項顯示或隱藏3D窗口,並允許您與3D模擬互動。
Scene Tree 場景樹菜單項打開Scene Tree,可以在其中編輯虛擬世界的窗口。或者,也可以雙擊主窗口中的某些對象:這將自動打開“場景樹”,並選擇相應的對象。
Text Editor 文本編輯器菜單項打開Webots文本編輯器。該編輯器可用於編輯和編譯控制器源代碼。
Console 控制檯”菜單項將打開“ Webots控制檯”,這是一個只讀控制檯,用於顯示Webots錯誤消息和控制器輸出。
Documentation 文檔”菜單項顯示或隱藏脫機“ Webots”文檔窗口。
Restore Layout 還原佈局”菜單項可還原主窗口面板的出廠佈局。
Clear Console 清除控制檯菜單項清除控制檯。
Edit Physics Plugin 編輯物理插件”菜單項將在文本編輯器中打開物理插件的源代碼。
Preferences 首選項”項將彈出本節中描述的窗口。

嚮導菜單(Wizards)

該向導菜單可以更容易地創建新的項目和新的控制器。

  • New Project Directory… (新建項目目錄…)”菜單項首先提示您選擇文件系統位置,然後創建一個項目目錄。項目目錄包含幾個子目錄,這些子目錄用於存儲與特定Webots項目相關的文件,即世界文件,控制器文件,數據文件,插件等。Webots會記住當前項目目錄,並自動從中打開並保存任何類型的文件。當前項目目錄的相應子目錄。
  • New Robot Controller …”菜單項允許您創建新的控制器程序。首先將提示您在C,C++,Java,Python或MATLAB TM控制器之間進行選擇。如果您在Windows上選擇C或C ++,Webots將爲您提供創建Makefile / gcc項目或Visual Studio項目的可能性。然後,Webots將要求您輸入控制器的名稱,最後它將在當前項目目錄中創建所有必需的文件(包括模板源代碼文件)。
  • New Physics Plugin… (新建物理插件…)”菜單項將使您可以爲項目創建新的物理插件。Webots要求您選擇一種編程語言(C或C
    ++)和新的物理插件的名稱。然後,它將在當前項目中創建目錄,模板源代碼文件和Makefile。

幫助菜單(Help)

使用“ 幫助”菜單可以更輕鬆地訪問文檔,支持和常規信息
關於…”( About…)項將打開一個About…顯示許可證信息的窗口。
Webots導覽…”(Webots Guided Tour… )菜單項啓動了一個導覽,通過一系列示例演示了Webots的功能。
檢查更新…”(Check for updates…)項會彈出一個窗口,通知正在使用的Webots版本是否爲最新版本,並在需要時提供下載最新版本的鏈接。
OpenGL的信息… (OpenGL Information… )菜單項,爲您提供有關當前OpenGL硬件和驅動程序的信息。它可以用於診斷渲染問題。
其餘菜單項以HTML頁面,PDF文檔等形式顯示各種信息。

主工具欄

主工具欄包含用於添加新節點對世界的按鈕,速度表(見本節)和快捷方式的項目FileSimulationView菜單。

  • 在這裏插入圖片描述隱藏/顯示場景樹:顯示或隱藏場景樹,並因此調整3D窗口的大小。
  • Alt添加:添加節點或對象。對於節點,這會觸發一個對話框,使您可以從列表中選擇節點類型。將使用默認值創建新節點,之後可以對其進行修改。您只能插入適合相應字段的節點。該對話框還可以通過單擊 導入… 按鈕來加載先前導出的節點。

速度表和虛擬時間

速度計(請參見下圖)指示計算機上模擬的速度。它顯示在主工具欄上,並指示仿真與實時相比運行的速度。換句話說,它代表虛擬時間的速度。如果速度計的值爲2,則意味着您的計算機仿真的運行速度是相應真實機器人的兩倍。此信息在Run模式和Fast模式下均有效。注意:在逐步模式下運行模擬時,不會顯示模擬速度(N/A而是顯示)。
在這裏插入圖片描述
在速度表的左側,使用以下格式顯示虛擬時間:

H:MM:SS:MMM

其中H是小時數(可以是幾位數字),MM是分鐘數,SS是秒數,MMM是毫秒數(請參見此圖)。如果車速表的值大於1,則虛擬時間的進度要快於實時時間。
可以在場景樹窗口basicTimeStepWorldInfo節點的字段中設置模擬的基本時間步長。它以虛擬時間毫秒錶示。該時間步長的值定義了在Step模式期間執行的時間步長。此步驟乘以displayRefresh同一WorldInfo節點的字段,以定義刷新顯示的頻率。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章