Färg#

Introduktion#

Färgsensorn är en optisk sensor som gör att din robot kan upptäcka när ett objekt är närvarande, känna igen specifika färger och returnera visuell data som ljusstyrka och nyans.

Du kan också konfigurera ljusstyrkan på sensorns interna ljus. Dessa verktyg är idealiska för program som behöver reagera på färgade objekt, ljusförhållanden eller sensorfeedback i realtid.

Den här sidan använder color_1 som exempelnamn för färgsensorn. Ersätt det med ditt eget konfigurerade namn efter behov.

Nedan följer en lista över alla metoder:

Åtgärder — Identifiera objekt med färgsensorn.

  • object_detected — Registrerar en funktion som ska anropas när ett objekt detekteras.

Mutatorer — Modifiera lamporna på färgsensorn.

  • set_light — Ställer in färgsensorns lysdiod på, av eller en inställd ljusstyrka.

  • set_light_power — Ställer in ljusstyrkan för färgsensorns LED-lampa.

Getters — Returnera objektdata med färgsensorn.

  • is_near_object — Returnerar om ett objekt är inom sensorns räckhåll.

  • color — Returnerar hexadecimalkoden för den detekterade färgen.

  • brightness — Returnerar den detekterade ljusstyrkan.

  • hue — Returnerar det detekterade nyansvärdet.

  • installed — Returnerar om färgsensorn är ansluten till hjärnan.

Konstruktörer — Initiera och konfigurera en färgsensor manuellt.

Åtgärder#

object_detected#

object_detected registrerar en funktion som ska anropas när färgsensorn detekterar ett objekt.

Usage:
color_1.object_detected(callback, args)

Parametrar

Beskrivning

callback

En funktion som tidigare är definierad att köras när färgsensorn detekterar ett objekt.

args

Valfritt. En tupel som innehåller argument som ska skickas till callback-funktionen. Se Funktioner med parametrar för mer information.

Mutatorer#

set_light#

set_light ställer in färgsensorns lysdiod på, av eller en inställd ljusstyrka.

Usage:
color_1.set_light(value, units)

Parametrar

Beskrivning

value

Anger om lysdioden ska slås på eller av med hjälp av något av följande:

  • LedStateType.ON — Ställer in lysdiodens ljusstyrka till 100 %.
  • LedStateType.OFF — Ställer in lysdiodens ljusstyrka till 0 %.
Alternativt kan en procentandel från 0 till 100 användas för att ställa in lysdiodens ljusstyrka. Värdet 0 stänger av lysdioden; värden över 0 slår på den med den ljusstyrkan.

units

Valfritt. Enheten som representerar ljusstyrkevärdet: PERCENT.

# Turn the LED on and off forever
while True:
    color_1.set_light(LedStateType.ON)
    wait(0.5, SECONDS)
    color_1.set_light(LedStateType.OFF)
    wait(0.5, SECONDS)

# Turn the LED on and off forever
while True:
    color_1.set_light(LedStateType.ON, 75)
    wait(0.5, SECONDS)
    color_1.set_light(0)
    wait(0.5, SECONDS)

set_light_power#

set_light_power ställer in ljusstyrkan på färgsensorns LED. Om LED-lampan inte redan är tänd, kommer den här metoden också att tända den.

Usage:
color_1.set_light_power(value)

Parametrar

Beskrivning

value

Lysdiodens ljusstyrka i procent från 0 till 100. Värdet 0 släcker lysdioden.

# Turn the LED light on at different intensities
color_1.set_light_power(10)
wait(2, SECONDS)
color_1.set_light_power(100)

Getters#

is_near_object#

is_near_object returnerar ett booleskt värde som anger om färgsensorn befinner sig inom cirka 57 millimeter (2,25 tum) från ett objekt. Detekteringen beror på reflekterat ljus, så mörka eller icke-reflekterande ytor kanske inte detekteras tillförlitligt.

  • True — Det detekterade objektet befinner sig inom cirka 57 millimeter.

  • False — Det detekterade objektet befinner sig inte inom cirka 57 millimeter.

Usage:
color_1.is_near_object()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

color#

color returnerar hexadecimalkoden för den detekterade färgen som en sträng i formatet “Färg” följt av två nollor och färgens hexadecimalvärde.

Till exempel, om rött (#FF0000) detekteras skulle det returnera “Färg 00FF0000”.

Usage:
color_1.color()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

# Display the currently detected hex value
while True:
    brain.screen.clear_screen()
    brain.screen.set_cursor(1, 1)
    brain.screen.print(color_1.color())
    wait(0.5,SECONDS)

brightness#

brightness returnerar hur ljus den detekterade färgen är, som ett heltal från 0 % till 100 %.

En högre procentandel innebär att färgsensorn detekterar mer ljus. En lägre procentandel innebär att färgsensorn detekterar mindre ljus.

Usage:
color_1.brightness()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

# Display the currently detected brightness
while True:
    brain.screen.clear_screen()
    brain.screen.set_cursor(1, 1)
    brain.screen.print("Brightness:")
    brain.screen.next_row()
    brain.screen.print(color_1.brightness())
    wait(0.5,SECONDS)

hue#

hue returnerar det detekterade nyansvärdet som ett flyttal i intervallet 0 till 359,99 grader.

Nyans är ett sätt att beskriva färg med hjälp av siffror runt en färgcirkel, som visas nedan.

En cirkulär färgcirkel som visar ett komplett spektrum av nyanser märkta med gradvärden runt omkretsen, ökande i 30-graders steg från 0° högst upp till 360°.

Usage:
color_1.hue()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

# Display the currently detected hue 
while True:
    brain.screen.clear_screen()
    brain.screen.set_cursor(1, 1)
    brain.screen.print("Hue: ")
    brain.screen.print(color_1.hue())
    wait(0.5,SECONDS)

installed#

installed returnerar ett booleskt värde som anger om färgsensorn är ansluten till hjärnan.

  • True — Färgsensorn är ansluten till hjärnan.

  • False — Färgsensorn är inte ansluten till hjärnan.

Usage:
color_1.installed()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

Konstruktörer#

Konstruktorer används för att manuellt skapa ColorSensor objekt, vilka är nödvändiga för att konfigurera en färgsensor utanför VEXcode.

ColorSensor#

ColorSensor skapar en färgsensor.

Usage:
color_1 = ColorSensor(smartport)

Parameter

Beskrivning

smartport

Den smarta porten som färgsensorn är ansluten till, skriven som PORTx där x är portens nummer.

# Create a Color Sensor object in Port 3
color_1 = ColorSensor(Ports.PORT3)