使用 VEX IQ 觸摸 LED

描述

此感應器可以偵測電容式觸摸,例如手指的觸摸。 它還可以設定為顯示多種顏色。

VEX IQ 觸摸 LED 感應器包含在 VEX IQ 超級套件中,但也可以在此處購買


觸摸 LED 的工作原理:偵測觸摸

Touch LED 採用的技術可以偵測周圍環境物理特性的微小變化。 它透過測量電容來實現這一點。

電容是任何物體的物理屬性。 它可能會受到物體的材質或形狀的影響。 我們周圍的空氣有一定的電容,電路有一定的電容,你的身體也有一定的電容。

Touch LED 可以透過發送電訊號並記錄回傳的訊號來偵測該電容。 在影像中您可以看到,按下按鈕時,紫色反應訊號與藍色輸入訊號相比會發生變化。 如果回應訊號恰到好處,則表示有手指存在,觸摸 LED 會向機器人大腦發送訊息,這意味著它正在被觸摸。

以這種方式檢查觸摸的優點之一是,電容的變化不需要您直接觸摸電路,只需非常靠近即可。 因此,Touch LED 中的電子裝置可以用塑膠屏蔽,並與更多電子裝置(例如裝置內部的多色 LED)一起封裝。


Touch LED 的常見用途:

  • 此感應器可用於透過手指觸摸來啟動或暫停程序。

  • 此感測器可用於在程式的不同部分顯示不同的顏色。


Touch LED 在競賽機器人上的用途:

  • 觸控 LED 可用於透過手指按壓來啟動正在執行的程式。
  • 透過對觸控 LED 進行編程,為每個部分顯示獨特的顏色,團隊成員可以看到自主程序的不同部分何時運行。
  • 如果出現問題,使用觸控 LED 還可以幫助解決程式設計問題。

在 VEXcode IQ 中使用觸摸 LED

在 VEXcode IQ 中新增觸控 LED 作為設備

截圖_2023-03-01_at_3.25.56_PM.png

若要在 VEXcode IQ 中對觸控 LED 進行編碼,您必須先配置觸控 LED。 查看本文以了解有關在 VEXcode IQ 中配置感測器的更多資訊。

配置觸摸 LED 後,命令將出現在工具箱中,您可以在專案中使用。

對觸摸 LED 進行區塊編碼

按壓觸碰 LED

截圖_2023-03-01_at_3.23.43_PM.png

<Pressing Touch LED> 塊是一個布林報告器區塊,用於報告條件為 true 或 false。 布爾塊(例如 <Pressing Touch LED> 塊)適合與其他塊的六邊形(六邊形)輸入的塊內部。

如果按下觸摸 LED,則 <Pressing Touch LED> 布爾塊報告“真”;如果釋放或未按下觸摸 LED,則報告“假”。 要了解有關布爾塊的更多信息,請訪問 幫助塊形狀和含義 文章。

注意:指令中顯示的觸控 LED 名稱與設定中給出的名稱相對應。 

截圖_2023-03-01_at_3.42.24_PM.png

在本例中, <Pressing Touch LED> 塊與 [等到] 塊一起使用,使機器人在按下 Touch LED 時向前行駛 500 毫米,如上面的影片所示。 

{When Touch LED}

截圖_2023-03-01_at_3.50.10_PM.png

<Pressing Touch LED> 塊是一個事件塊,它將運行按下或釋放觸摸 LED 時附加的塊堆疊。 

要了解有關事件塊的更多信息,請訪問 幫助塊形狀和含義 文章。

截圖_2023-03-01_at_3.47.29_PM.png

在此範例中, {When Touch LED} 塊與 [Drive for] 塊一起使用,使機器人向前行駛 500 度,直到按下觸控 LED,如上面的影片所示。 

外觀類別中的觸控 LED 模組

截圖_2023-03-01_at_4.01.06_PM.png

每個模組都可用於調整觸控 LED 上顯示的顏色。 

[設定觸控 LED 顏色]用於設定觸控 LED 所需的顏色。 

[設定觸控 LED 淡入淡出]用於將所需的觸控 LED 淡入淡出速度設定為慢、快或無。 

[設定觸控 LED 亮度]用於設定觸控 LED 所需的亮度等級(0-100%)。 

要了解有關每個區塊的更多信息,請訪問 幫助

截圖_2023-03-01_at_5.07.13_PM.png

在此範例中,觸控 LED 亮度設定為 100%,顏色將首先顯示藍色 2 秒,然後慢慢褪為紅色。 這些區塊可用於在項目的不同部分顯示不同的顏色。

使用 Python 編寫觸控 LED 程式碼

注意:要使用 Python 編寫 VEX IQ(第一代)保險桿開關,必須將其連接到 VEX IQ(第二代)大腦。 VEX IQ(第一代)Brain 不支援 Python。

TouchLED.按壓

touchled_3.pressing()

TouchLED.pressing指令報告有關觸控 LED 的布林值 true 或 false。

如果觸控 LED 被按下,則 TouchLED.pressing 指令報告「true」;如果觸控 LED 被釋放或未按下,則報告「false」。 

注意:指令中顯示的觸控 LED 名稱與設定中給出的名稱相對應。 

while True:
while not touchled_3.pressing():
wait(20, MSEC)
Drivetrain.drive_for(FORWARD, 500, MM)
wait(20, MSEC)

在本例中,條件為 not While 循環與 TouchLED.pressing 命令一起使用,使機器人在按下 Touch LED 時向前行駛 500mm,如下所示上面的視頻。

觸摸 LED 事件命令

touchled_3.pressed(回呼)
touchled_3.released(回呼)

TouchLED.pressedTouchLED.released 指令在按下或釋放 Touch LED 時執行指定的回呼函數。

def touchled_3_pressed():
(FORWARD, 500, MM)
while True:
touchled_3.pressed(touchled_3_pressed)

在此範例中,TouchLED.pressed 事件指令定義為 向前 500mm。 然後使用while循環,以便每當按下 Touch LED 時,機器人都會在專案運行時向前行駛 500mm。 

外觀類別中的觸控 LED 指令

touchled_3.set_color(Color.BLACK)
touchled_3.set_fade(FadeType.SLOW)
touchled_3.setbrightness(50)

這些命令中的每一個都可用於調整觸控 LED 上顯示的顏色。 

設定 TouchLED 顏色 用於設定 Touch LED 所需的顏色。 

設定 TouchLED 淡入淡出 用於將 Touch LED 淡入淡出所需的速度設定為慢速、快速或無。 

設定 TouchLED 亮度 用於設定 Touch LED 所需的亮度等級(0-100%)。 

要了解有關每個命令的更多信息,請訪問 幫助

touchled_3.set_brightness(100)
touchled_3.set_color(Color.BLUE)
等待(2, SECONDS)
touchled_3.set_fade(FadeType.SLOW)
touchled_3.set_color(Color.RED)

在此範例中,觸控 LED 亮度設定為 100%,顏色將首先顯示藍色 2 秒,然後慢慢褪為紅色。 這些命令可用於在項目的不同部分顯示不同的顏色。

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: