當您的 VR 機器人在使用感測器回饋時未如預期運作時,您可以按照逐步故障排除程序來尋找並解決問題。 本文將解釋故障排除過程,並提供有關如何使具有感測器的 VR 機器人按預期運行的提示。
這個過程的步驟是:
- 找出問題所在
- 檢查VEXcode VR項目
- 分析和應用數據
找出問題所在
對感測器進行故障排除的第一步是確定導致問題的感測器。 將觀察到的機器人行為與預期的機器人行為進行比較。 有問題的行為是由感測器引起的嗎? 如果是的話,哪個感測器?
了解感測器的放置
為了識別 VEXcode VR 中的感測器問題,了解每個型號的 VR 機器人上有哪些感測器以及感測器位於您正在編碼的特定機器人上的位置非常重要。 感測器的放置位置因 VR 機器人的型號而異,而 VR 機器人的型號又因 Playground 而異。 感測器位置將影響感測器與其環境的互動方式。 使用下表確定您正在編碼的機器人、包含哪些感測器以及該機器人上感測器的位置。 選擇該文章以獲取有關感測器放置的更多資訊。
| 機器人 | 遊樂場 | 文章 |
|
VEX VR機器人 |
|
了解 VEXcode VR 中的機器人功能 |
|
VR迷宮機器人 |
|
了解 VR MazeBot 的功能 |
|
VR漫遊者 |
|
VR 漫遊車的特點 |
|
迪斯可 |
|
了解 VRC 虛擬技能中的機器人功能 |
|
莫比 |
|
了解 VRC Tipping Point 中的機器人功能 VEXcode VR |
|
快照 |
|
了解 VIQC 虛擬技能中的機器人功能 |
|
一丟 |
|
了解 VIQC 中的機器人功能 投入 VEXcode VR |
|
VR大賽高階英雄機器人 |
|
了解 GO 競賽中的機器人功能 - VEXcode VR 中的火星數學探險遊樂場 |
|
VR 123機器人 |
|
使用 VEXcode 123 對 VEX 123 眼感測器進行編碼(VR 123 機器人具有相同的感測器)。 |
檢查 VEXcode VR 項目
一旦確定了導致問題的感測器以及它在 VR 機器人上的位置,您就可以繼續檢查 VEXcode VR 專案。 迭代專案可以幫助您確保來自感測器的資料在專案中有效使用。 以下策略可以幫助您對感測器進行編碼。
運行範例項目
開啟一個使用您正在排除故障的感測器的範例專案。 您可以選擇“感測”類別來過濾範例項目。
有關在 VEXcode VR 中使用範例 Blocks 專案的更多信息, 請參閱本文。
有關在 VEXcode VR, 中使用範例 Python 專案的更多信息,請參閱本文。
打開後,閱讀註釋以確定範例項目中的功能是否與您嘗試使用感測器執行的操作一致。
在此處顯示的範例專案中,註釋顯示此範例專案提供如何將所有可用距離感測器命令與機器人一起使用的範例。
運行範例專案並觀察機器人行為。 然後查看該項目,以了解如何使用感測器數據來引發觀察到的行為。 您可能需要多次運行範例專案來幫助解決此問題。
您可能還想嘗試建立自己的簡化項目,以將從範例專案中學到的知識應用到您的任務中。
使用幫助
使用 VEXcode VR 中範例專案或您的專案中的區塊或命令的幫助功能,了解所使用的資料、命令將報告的值以及如何在專案中使用該命令的範例。
讀取監控控制台上的數據
在 VEXcode VR 的監視器控制台中監控感測器值可讓使用者查看專案中特定感測器值(或多個值)的即時報告。
若要開啟“監視器”視窗並查看“監視器控制台”,請選擇“說明”旁邊的“監視器”圖示。
工具箱中感測類別的區塊可以新增到監視器控制台。
首先,在工具箱內的區塊中選擇要監視的參數。
嵌套、選擇區塊並將其拖曳到工作區中的監視器控制台圖示。
選定的感測器值將顯示在監視器控制台中,並可用於根據需要調整 VEXcode 項目,以便從 VR 機器人獲得所需的行為。
有關在 VEXcode VR, 中監控感測器值的更多信息,請參閱本文。
要在 VEXcode VR Python 中監控感測器值,需要將monitor_sensors 命令新增至專案。 有關使用 Python 0 監控 VEXcode VR 中感測器的更多信息, 參閱本文。
逐步完成您的項目
VEXcode VR Blocks 中的「Step」按鈕可讓您查看專案中正在執行的區塊。 這有助於確定哪個感測區塊導致專案中出現問題。
步驟按鈕位於螢幕右上角,「開始」按鈕旁。
有關單步執行 VEXcode VR 專案的更多信息, 請參閱本文。
分析和應用數據
接下來,使用您在前面步驟中學到的知識來調整您的原始項目。 您可以繼續使用幫助和列印資料等工具,使您能夠有效地使用感測器來實現您的目標。
您也可以詢問有關您的專案的問題,以幫助您繼續前進。 想想這樣的事情:
- 您在專案中使用的數量是大於 < 還是小於 > ? 符號的方向是否正確? 如果您使用等於=,請嘗試將其替換為大於或小於,以使用一系列值。
- 你的參數正確嗎? 您是否使用感測器的數據來設定參數? 您選擇了您需要的下拉選項嗎?
- 您是否多次檢查條件? 嘗試在您的專案中新增一個 Forever 循環,以便在專案執行時重複檢查條件。
- 您的專案陷入困境了嗎? 你的條件設定正確嗎? 如果您使用巢狀循環,請嘗試簡化您的專案以隔離各個行為。
- 您偵測到的顏色正確嗎? 感測器報告的顏色是否與您項目中的顏色不同? 嘗試更改區塊或命令中的顏色參數。
- 您是否在感測器視野內偵測到物體? 請記住,視野會隨著機器人的移動而移動。
- 檢查條件時是否使用等待區塊? 檢查條件時,請務必在專案中使用非等待區塊。
- 如果您在區塊中編碼,您的整個堆疊是否附加到 {When started} hat 區塊? 區塊僅在連線時才會運作。 當您拖曳塊並將它們連接在一起時,您可以聽到咔嗒聲。
- 您是否在正確的 Playground 中運行您的專案? 必須選擇正確的 Playground 才能使您的專案按預期運行。
當您回答這些問題時,請務必一次更改項目中的一件事,對其進行測試,然後評估該更改是否有效。 經常測試您的專案可以幫助您更輕鬆地了解程式碼如何與機器人的行為相關聯。 您可能需要多次重複故障排除過程中的步驟才能解決您的問題,沒關係。 每次迭代都將幫助您更了解您正在使用的感測器以及如何在 VEXcode VR 中對其進行編碼。