Rotācijas sensors#

Ievads#

Rotācijas sensors mēra vārpstas rotāciju. To var izmantot jebkurā robota vietā, kur rotē vārpsta, pat ja šī vārpsta nav tieši savienota ar motoru.

Motoram ir iebūvēts kodētājs, kas var izsekot tā rotāciju. Rotācijas sensors darbojas kā ārējs kodētājs, kas var izsekot atsevišķas vārpstas rotāciju.

Rotācijas sensors var atgriezt vārpstas leņķi, pozīciju un ātrumu. Leņķis ir vārpstas absolūtā pozīcija no 0 līdz 359,99 grādiem. Tas netiek atiestatīts, kad projekts sākas vai kad robots tiek izslēgts. Pozīcija izseko, cik grādus vai pagriezienus vārpsta ir pagriezusies uz priekšu vai atpakaļ projekta laikā, un to var atiestatīt pēc nepieciešamības.

Rotācijas sensors ir saderīgs ar 1/8 collu un 1/4 collu standarta VEX vārpstām.

VEX EXP rotācijas sensors.

Šajā lapā kā rotācijas sensora nosaukuma piemērs tiek izmantots rotation_sensor Ja nepieciešams, nomainiet to ar savu konfigurēto nosaukumu.

Zemāk ir pieejamo metožu saraksts:

  • set_position — Iestata rotācijas sensora pašreizējo pozīciju uz noteiktu vērtību.

  • angle — Atgriež vārpstas pašreizējo leņķi no 0 līdz 359,99 grādiem.

  • position — Atgriež, cik tālu vārpsta ir pagriezusies grādos vai pagriezienos.

  • velocity — Atgriež vārpstas griešanās ātrumu.

  • reset_position — Atiestata rotācijas sensora pašreizējo pozīciju uz 0.

  • set_reversed — Nosaka, vai rotācijas sensora izeja ir apgriezta.

  • changed — Reģistrē funkciju, kas jāizpilda ikreiz, kad mainās rotācijas sensora vērtība.

Konstruktors — manuāla rotācijas sensora inicializācija.

  • Rotation — Izveido rotācijas sensoru.

iestatītā_pozīcija#

set_position iestata rotācijas sensora pašreizējo pozīciju uz vērtību.

Pozīcija norāda, cik tālu projekta laikā ir pagriezusies vārpsta. Pozīcijas iestatīšana maina pašreizējo pozīcijas vērtību, nepārvietojot vārpstu.

Usage:
rotation_sensor.set_position(position, units)

Parametri

Apraksts

position

Pozīcijas vērtība, kas jāpiešķir rotācijas sensoram. Tā var būt vesels skaitlis vai decimālskaitlis.

units

Pēc izvēles. Pozīcijas mērvienība: DEGREES (pēc noklusējuma) vai TURNS.

# Set the Rotation Sensor to 2.5 Turns
rotation_sensor.set_position(2.5, TURNS)

leņķis#

angle atgriež vārpstas pašreizējo leņķi kā peldošo vērtību.

Leņķis norāda vārpstas absolūto pozīciju viena apgrieziena laikā no 0 līdz 359,99 grādiem. Tas netiek atiestatīts, kad projekts tiek sākts vai kad robots tiek izslēgts.

Usage:
rotation_sensor.angle(units)

Parametri

Apraksts

units

Neobligāti. Leņķa mērvienība: DEGREES (pēc noklusējuma) vai TURNS.

pozīcija#

position atgriež, cik tālu ir pagriezusies vārpsta.

Atšķirībā no leņķa, pozīcija var palielināties virs 359,99 grādiem vai samazināties zem 0 grādiem. Pozīcija izseko, cik tālu projekta laikā griežas vārpsta uz priekšu vai atpakaļ, un to var atiestatīt pēc nepieciešamības.

Usage:
rotation_sensor.position(units)

Parametri

Apraksts

units

Pēc izvēles. Pozīcijas mērvienība: DEGREES (pēc noklusējuma) vai TURNS.

ātrums#

velocity atgriež vārpstas griešanās ātrumu.

Usage:
rotation_sensor.velocity(units)

Parametri

Apraksts

units

Ātruma mērvienība: VelocityUnits.RPM (apgriezieni minūtē) vai VelocityUnits.DPS (grādi sekundē).

atiestatīt_pozīciju#

reset_position atiestata rotācijas sensora pašreizējo pozīciju uz 0.

Usage:
rotation_sensor.reset_position()

Parametri

Apraksts

Šai metodei nav parametru.

apgrieztā set_reversed#

set_reversed nosaka, vai rotācijas sensora izeja ir apgriezta.

Apgriežot pozitīvās vērtības kļūst negatīvas, bet negatīvās vērtības — pozitīvas. Šī metode darbojas tāpat kā parametra reverse iestatīšana uz True , izmantojot Rotation konstruktoru.

Usage:
rotation_sensor.set_reversed(value)

Parametri

Apraksts

value

Vai mainīt rotācijas sensora izejas virzienu: True vai False.

mainījies#

changed reģistrē funkciju, kas tiks izsaukta ikreiz, kad mainīsies rotācijas sensora vērtība.

Usage:
rotation_sensor.changed(callback, arg)

Parametri

Apraksts

callback

Iepriekš definēta funkcija, kas darbojas, kad mainās rotācijas sensora vērtība.

arg

Neobligāti. Kortežs, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Funkciju izmantošana ar parametriem.

def my_function():
  brain.screen.print("Rotated!")

# Call my_function whenever rotation_sensor's value changes
rotation_sensor.changed(my_function)

Konstruktors#

Konstruktori tiek izmantoti, lai manuāli izveidotu Rotation objektus, piemēram, konfigurējot rotācijas sensoru ārpus VEXkoda.

Rotation#

Rotation izveido rotācijas sensora objektu.

Usage:
Rotation(smartport)

Parametrs

Apraksts

smartport

Viedports, kuram ir pievienots rotācijas sensors, kas pierakstīts kā Ports.PORTx, kur x ir porta numurs.

reverse

Neobligāti. Vai mainīt rotācijas sensora izejas virzienu: True vai False (pēc noklusējuma).

# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)