Acs#

Ievads#

VEX GO acu sensors var noteikt objektus un krāsas. Tas var arī ziņot par to, cik daudz gaismas atstarojas atpakaļ uz sensoru, un noteiktās krāsas nokrāsas vērtību.

Acu sensoram ir gaisma, ko var ieslēgt vai izslēgt, lai palīdzētu tam skaidrāk saskatīt objektus un krāsas. Acu sensors var izmantot arī diapazonu NEAR vai FAR , lai noteiktu objektus dažādos attālumos.

Acu sensoru var novietot dažādās pozīcijās atkarībā no konstrukcijas. Piemēram, Code Base 2.0 — acs vērsta uz priekšu konstrukcijai acu sensors ir vērsts uz priekšu. Code Base 2.0 — acs vērsta uz leju, Code Base 2.0 — acs + elektromagnēts un Super Code Base 2.0 konstrukcijai acu sensors ir vērsts uz leju.

Tālāk sniegtajos piemēros konfigurētais Eye Sensor ir nosaukts par eyeŠis nosaukums piemēros tiek izmantots, lai izsauktu Eye klases metodes.

Acu sensoru var kodēt daudzos veidos. Zemāk ir visu acu metožu saraksts:

Mutatori — pielāgojiet acu sensora iestatījumus.

  • set_light — Ieslēdz vai izslēdz acu sensora apgaismojumu.

  • set_range — Iestata, cik tālu acu sensors var noteikt objektu.

  • set_light_power — Iestata acu sensora gaismas jaudas līmeni.

Ieguvēji — Atgriež to, ko nosaka acu sensors.

Mutatori#

set_light#

set_light ieslēdz vai izslēdz acu sensora apgaismojumu.

Usage:
eye.set_light(state)

Parametri

Apraksts

state

Acu sensora gaismas stāvoklis: ON vai OFF.

# Build Used: Super Code Base 2.0
def main():
    # Turn the light on and off
    while True:
        eye.set_light(ON)
        wait(2, SECONDS)
        eye.set_light(OFF)
        wait(2, SECONDS)

# Start threads — Do not delete
start_thread(main)

set_range#

set_range nosaka, cik tālu objekts var atrasties no acu sensora, pirms to var noteikt.

Katrs projekts sākas ar acu sensora noklusējuma iestatījumu FAR diapazonā.

Usage:
eye.set_range(distance)

Parametri

Apraksts

distance

Acu sensora objektu noteikšanas diapazons. NEAR nosaka objektus līdz 18 milimetru attālumā, savukārt FAR nosaka objektus līdz 40 milimetru attālumā.

# Build Used: Code Base 2.0 - Eye Forward
def main():
    # Drive to an object with different ranges
    eye.set_range(FAR)
    drivetrain.drive(FORWARD)
    wait(0.2, SECONDS)
    while not eye.is_object_detected():
        wait(0.2, SECONDS)
    drivetrain.drive_for(REVERSE, 100, MM)
    # Closer detection range
    eye.set_range(NEAR)
    drivetrain.drive(FORWARD)
    wait(0.2, SECONDS)
    while not eye.is_object_detected():
        wait(0.2, SECONDS)
    drivetrain.stop()


# Start threads — Do not delete
start_thread(main)

set_light_power#

set_light_power iestata acu sensora gaismas spilgtumu. Gaisma var palīdzēt acu sensoram skaidrāk noteikt objektus un krāsas.

Augstāks procentuālais daudzums padara gaismu spilgtāku. Zemāks procentuālais daudzums padara gaismu blāvāku.

Ja acu sensora gaisma ir izslēgta, gaismas jaudas iestatīšana virs 0% ieslēgs gaismu.

Ja acu sensora gaisma ir ieslēgta, gaismas jaudas iestatīšana uz 0% izslēgs gaismu.

Usage:
eye.set_light_power(value)

Parametri

Apraksts

value

Acu sensora gaismas spilgtuma iestatīšanas vērtība no 0% līdz 100%. Izmantojiet veselus skaitļus.

# Build Used: Super Code Base 2.0
def main():
    # Turn on the light at different brightnesses
    eye.set_light_power(25)
    wait(2, SECONDS)
    eye.set_light_power(50)
    wait(2, SECONDS)
    eye.set_light_power(100)

# Start threads — Do not delete
start_thread(main)

Getteri#

get_color#

get_color atgriež krāsu, ko noteicis acu sensors.

Šī metode var atgriezt:

  • RED — Nokrāsas vērtība no 340° līdz 20°

  • GREEN — Nokrāsas vērtība no 75° līdz 154°

  • BLUE — Nokrāsas vērtība no 160° līdz 254°

  • NONE — Neviena no pieejamajām krāsām netiek noteikta.

Usage:
eye.get_color()

Parametri

Apraksts

Šai metodei nav parametru.

# Build Used: Super Code Base 2.0
def main():
    # Stop when red is detected
    drivetrain.drive(FORWARD)
    while True:
        if eye.get_color() == RED:
            break
        wait(0.2, SECONDS)
    drivetrain.stop()

# Start threads — Do not delete
start_thread(main)

get_hue#

get_hue atgriež acu sensora noteikto krāsu kā veselu skaitli no 0 līdz 359,00 grādiem.

Nokrāsa ir veids, kā aprakstīt krāsu, izmantojot skaitļus ap krāsu apli.

Apļveida krāsu aplis, kas attēlo pilnu toņu spektru, kas apzīmēts ar grādu vērtībām pa perimetru, palielinoties ar 30 grādu soli no 0° augšpusē līdz 360°.

Usage:
eye.get_hue()

Parametri

Apraksts

Šai metodei nav parametru.

# Build Used: Code Base 2.0 - Eye Forward
def main():
    # Display the hue of a pink GO piece
    while True:
        console.clear()
        if 10 < eye.get_hue() < 40:
            console.print("Pink!")
            wait(0.1,SECONDS)
        else:
            console.print("Not pink.")
            wait(0.1,SECONDS)

# Start threads — Do not delete
start_thread(main)

get_brightness#

get_brightness atgriež uztvertās gaismas spilgtumu kā veselu skaitli no 0% līdz 100%.

Augstāks procentuālais daudzums nozīmē, ka uz acs sensoru tiek atstarots vairāk gaismas. Zemāks procentuālais daudzums nozīmē, ka uz acs sensoru tiek atstarots mazāk gaismas.

Usage:
eye.get_brightness()

Parametri

Apraksts

Šai metodei nav parametru.

# Build Used: Super Code Base 2.0
def main():
    # Monitor the brightness until red is detected
    monitor_sensor("eye.get_brightness")
    drivetrain.drive(FORWARD)
    while not eye.get_color() == RED:
        wait(0.2, SECONDS)
    drivetrain.stop()

# Start threads — Do not delete
start_thread(main)

is_object_detected#

is_object_detected atgriež Boolean, kas ziņo, vai acu sensors uztver objektu diapazonā.

  • True — Acu sensors nosaka objektu.

  • False — Acu sensors neuztver objektu.

Noteikšanas diapazonu var mainīt, izmantojot set_range.

Usage:
eye.is_object_detected()

Parametri

Apraksts

Šai metodei nav parametru.

# Build Used: Code Base 2.0 - Eye Forward
def main():
    # Drive forward until an object is detected
    drivetrain.drive(FORWARD)
    wait(0.2, SECONDS)
    while not eye.is_object_detected():
        wait(0.5, SECONDS)
    drivetrain.stop()

# Start threads — Do not delete
start_thread(main)

is_color_detected#

is_color_detected atgriež Boolean, kas ziņo, vai acu sensors nosaka noteiktu krāsu, pamatojoties uz noteikto nokrāsas vērtību.

  • True — Acu sensors nosaka atlasīto krāsu.

  • False — Acu sensors nenosaka atlasīto krāsu.

Acu sensors vislabāk darbojas, ja objekts atrodas pietiekami tuvu, lai to noteiktu, un apgaismojums ir skaidrs.

Usage:
eye.is_color_detected(color)

Parametri

Apraksts

color

Acu sensora pārbaudāmā krāsa:

  • BLUE – Nokrāsas vērtība no 160° līdz 254°.
  • GREEN – Nokrāsas vērtība no 75° līdz 154°.
  • NONE
  • RED – Nokrāsas vērtība no 340° līdz 20°.

# Build Used: Super Code Base 2.0
def main():
    # Drive forward until a green object is detected
    drivetrain.drive(FORWARD)
    wait(0.2, SECONDS)
    while not eye.is_color_detected(GREEN):
        wait(0.5, SECONDS)
    drivetrain.stop()

# Start threads — Do not delete
start_thread(main)