Zderzak#

Wstęp#

Bumper to mechaniczny przełącznik, który po naciśnięciu zamyka obwód, umożliwiając robotowi wykrywanie naciśnięć i zwolnień.

Poniżej znajduje się lista wszystkich dostępnych metod:

Getters – Sprawdź, czy czujnik zderzaka jest aktualnie wciśnięty.

Wywołanie zwrotne – uruchom kod po naciśnięciu lub zwolnieniu zderzaka.

  • on_pressed – Rejestruje funkcję, która ma zostać wywołana po naciśnięciu czujnika zderzaka.

  • on_released – Rejestruje funkcję, która ma zostać wywołana po zwolnieniu czujnika zderzaka.

Getters#

pressed#

pressed zwraca wartość logiczną wskazującą, czy przełącznik zderzaka jest aktualnie wciśnięty. Można tego użyć do sprawdzenia, czy robot uderza w inne obiekty.

  • True – Wciśnięty jest przełącznik zderzaka.

  • False – Przełącznik zderzaka nie jest wciśnięty.

Usage:
bumper.pressed()

Parametry

Opis

Ta metoda nie ma żadnych parametrów.

def main():
    # Stop when the Left Bumper is pressed
    drivetrain.drive(FORWARD)
    while True:
        if left_bumper.pressed():
            drivetrain.stop()
        wait(5, MSEC)

# VR threads — Do not delete
vr_thread(main)

Oddzwonienie#

on_pressed#

on_pressed rejestruje funkcję, która ma zostać wywołana po naciśnięciu czujnika zderzaka.

Usage:
bumper.on_pressed(callback)

Parametry

Opis

callback

Funkcja, która została wcześniej zdefiniowana do wykonania po naciśnięciu czujnika zderzaka.

def bumper_pressed():
    # Reverse when the bumper is pressed
    drivetrain.drive_for(REVERSE, 100, MM)
    drivetrain.stop()

def main():
    # Drive forward until the left bumper is pressed
    drivetrain.drive(FORWARD)
    left_bumper.on_pressed(bumper_pressed)

# VR threads — Do not delete
vr_thread(main)

on_released#

on_released rejestruje funkcję, która ma zostać wywołana po zwolnieniu czujnika zderzaka.

Usage:
bumper.on_released(callback)

Parametry

Opis

callback

Funkcja, która została wcześniej zdefiniowana do wykonania po naciśnięciu czujnika zderzaka.

def bumper_released():
    # Display a message
    brain.print("Bumper released!")

def main():
    # Hit and back away from an object
    left_bumper.on_released(bumper_released)
    drivetrain.drive_for(FORWARD, 600, MM)
    drivetrain.drive_for(REVERSE, 100, MM)

# VR threads — Do not delete
vr_thread(main)