VR 機器人上的距離感測器會報告 VR 機器人與最近物體之間的距離。 感測器利用雷射從物體反射並返回感測器所需的時間來計算距離。
VR機器人上的距離感測器
距離感測器是報告 VR 機器人與最近固體物體之間距離的感測器。
距離感測器使用與聲納設備相同的原理來測量聲音。 它透過感測器一側的發射器發出微小的雷射脈衝,然後計算光反射回感測器另一側的接收器所需的時間。 感測器根據脈衝往返所需的時間來計算距離。 然後,距離感測器向 VR 機器人報告最近物體的距離。
當距離 VR 機器人前方的距離越來越遠時,距離感測器的視野寬度會改變:
- 當尋找小於 1000 毫米(約 39 英吋)遠的物體時,感測器可以偵測 10 度視野內的物體。
- 當尋找 1000 毫米(約 39 英吋)和 2000 毫米(約 78 英吋)之間的物體時,感測器可以偵測 5 度視野內的物體。
- 當尋找大於 2000 毫米(約 78 英吋)遠的物體時,感測器可以偵測 2 度視野內的物體。
距離感測器的常見用途
距離感測器可以偵測VR機器人前方是否有物體。 這可以用來避開障礙物。
| VEXcode VR 區塊 | 牆迷宮遊樂場 | |
|---|---|---|
| VEXcode VR Python | ||
def main(): |
||
|
距離感測器可以測量距離感測器正面與物體正面之間的距離。 這有助於完成迷宮而不會不斷撞到牆壁或躲避物體。 |
||
| VEXcode VR 區塊 | 動態城堡破壞者遊樂場 | |
|---|---|---|
|
|
||
| VEXcode VR Python | ||
def main(): |
||
|
在此範例中,如果距離感測器發現物體,VR 機器人將向前行駛。 如果沒有偵測到物體,VR機器人將右轉並繼續檢查是否有物體。 注意: 此範例將找到第一棟建築物,但需要改進以避免從桌子上掉下來。 |
||
將距離感測器與 VEXcode VR 區塊結合使用
與距離感測器一起使用的區塊可以在“感測”類別中找到。
<發現物體的距離> 塊
距離感測器使用 <距離發現物件>塊偵測其前面是否有物件。 距離感測器可以偵測距離感測器 3000 毫米(約 118 英吋)範圍內的物體或表面。
<Distance found object>區塊是一個布林區塊,它傳回 true 或 false 的條件,適合與其他區塊具有六邊形(六邊形)空間的任何區塊內部。
有關布爾塊的更多信息, 查看這篇文章。
<Distance found object> 塊的值是一個布林塊,當距離感測器靠近物體時報告 true,當距離感測器距離物體不夠近時報告 false。
True 或 false 將被報告並出現在監控控制台中。
要了解有關 Monitor Console 的更多信息, 請查看本文。
街區(距離)
使用(距離)方塊,距離感測器可以報告最近物體的距離,以毫米 (mm) 或英吋為單位。
(距離)區塊報告數值並適合任何具有橢圓形空間的區塊。
有關記者區塊的更多信息, 查看這篇文章。
以毫米 (mm) 或英吋為單位的(距離)區塊的值可以顯示在 VEXcode VR 的監視器控制台上。
要了解有關 Monitor Console 的更多信息, 請查看本文。
在 VEXcode VR Python 中使用距離感測器
要開始使用 Python 對距離感測器進行編程,您需要先打開一個文字專案 VEXcode VR。 欲了解更多信息,請參閱 這篇文章。
接下來,在工具箱中找到 Sensing 類別,找到 和 get_distance 指令。 這些函數報告有關感測器的布林值或數值。
若要將命令新增至專案中,您可以從工具箱中拖曳到命令,或使用自動完成功能在工作區中鍵入命令。
要了解有關使用 Python 在 VEXcode VR 中自動完成的更多信息, 請參閱本文。
def main(): |
|
當您希望機器人執行諸如行駛之類的操作直到距離感測器距離牆壁 50 毫米或更小,然後停止或轉彎時,可以將 while 循環與機器人上的感測器一起使用。 在本專案中,當距離感測器報告的值大於50mm時,機器人將向前行駛,當距離感測器距離牆壁小於50mm時,機器人將停止行駛。 |
def main(): |
|
get_distance 和 指令的值可以顯示在 VEXcode VR 的監視器控制台上。 要了解有關在 VEXcode VR Python 中使用監視器控制台的更多信息, 請參閱本文。 |