Módulo#

Introducción#

El dron VEX AIR cuenta con un puerto de módulo, que se puede conectar a varios módulos VEX AIR. Estos permiten que el dron caiga y retenga diferentes cargas útiles.

Nota: Estos métodos solo funcionan con el módulo de gancho motorizado y el módulo de imán.

A continuación se muestra una lista de todos los métodos disponibles:

Acciones

  • drop_payload – Libera una carga útil utilizando el módulo adjunto.

  • hold_payload – Mantiene una carga útil utilizando el módulo adjunto.

Getters

  • get_type – Devuelve el tipo de módulo que está conectado al dron.

  • is_holding – Devuelve el estado actual del módulo de gancho motorizado.

Acciones#

drop_payload#

drop_payload libera una carga útil utilizando el módulo adjunto. El módulo de gancho motorizado abre su gancho y el módulo de imán apaga su imán.

Nota: Este método solo funciona con el módulo de gancho motorizado y el módulo de imán.

Uso:

drone.module.drop_payload()

Parámetros

Descripción

Este método no tiene parámetros.

# Demonstrate the Motorized Hook Module moving
drone.take_off(climb_to=800)
wait(1, SECONDS)
drone.module.hold_payload()
wait(2, SECONDS)
drone.module.drop_payload()
drone.land()

hold_payload#

hold_payload contiene una carga útil utilizando el módulo adjunto. El módulo de gancho motorizado cierra su gancho y el módulo de imán enciende su imán.

Nota: Este método solo funciona con el módulo de gancho motorizado y el módulo de imán.

Uso:

drone.module.hold_payload()

Parámetros

Descripción

Este método no tiene parámetros.

# Demonstrate the Motorized Hook Module moving
drone.take_off(climb_to=800)
wait(1, SECONDS)
drone.module.hold_payload()
wait(2, SECONDS)
drone.module.drop_payload()
drone.land()

Getters#

get_type#

get_type devuelve uno de los siguientes en función del módulo actualmente conectado al dron:

  • DroneModuleType.HOOK – El módulo de gancho motorizado está conectado.

  • DroneModuleType.MAGNET – El módulo magnético está conectado.

  • DroneModuleType.PASSIVE : el módulo de gancho pasivo está conectado o no hay ningún módulo conectado.

Uso:

drone.module.get_type()

Parámetros

Descripción

Este método no tiene parámetros.

# Display what module is attached to the drone
# Change the module with Propeller Lock on during project
while True:
    clear_console()
    print(drone.module.get_type())
    wait(0.2,SECONDS)

is_holding#

is_holding devuelve un Boolean que indica si el módulo de gancho motorizado se encuentra actualmente en el estado de retención o en el estado de caída.

  • True : el módulo del gancho motorizado está bajado.

  • False – El módulo del gancho motorizado está elevado.

Nota: Este método solo funciona con el módulo de gancho motorizado.

Uso:

drone.module.is_holding()

Parámetros

Descripción

Este método no tiene parámetros.

# Create a custom button to toggle the Motorized Hook Module
def hook_toggle():
    if drone.module.is_holding():
        drone.module.drop_payload()
    else:
        drone.module.hold_payload()

controller.button5.pressed(hook_toggle)