Sensor Rotasi#

Perkenalan#

Sensor Rotasi mengukur rotasi poros. Sensor ini dapat digunakan di mana saja pada robot tempat poros berputar, bahkan jika poros tersebut tidak terhubung langsung ke motor.

Motor memiliki encoder internal yang dapat melacak rotasinya sendiri. Sensor Rotasi bekerja seperti encoder eksternal yang dapat melacak rotasi poros terpisah.

Sensor Rotasi dapat mengembalikan sudut, posisi, dan kecepatan poros. Sudut adalah posisi absolut poros dari 0 hingga 359,99 derajat. Nilai ini tidak akan direset saat proyek dimulai atau saat robot dimatikan. Posisi melacak berapa derajat atau putaran poros telah berputar maju atau mundur selama proyek, dan dapat direset sesuai kebutuhan.

Sensor Rotasi ini kompatibel dengan poros VEX standar berukuran 1/8 inci dan 1/4 inci.

Sensor Rotasi VEX EXP.

Halaman ini menggunakan rotation_sensor sebagai contoh nama Sensor Rotasi. Ganti dengan nama yang Anda konfigurasi sendiri sesuai kebutuhan.

Berikut adalah daftar metode yang tersedia:

  • set_position — Mengatur posisi Sensor Rotasi saat ini ke nilai tertentu.

  • angle — Mengembalikan sudut poros saat ini dari 0 hingga 359,99 derajat.

  • position — Mengembalikan seberapa jauh poros telah berputar dalam derajat atau putaran.

  • velocity — Mengembalikan seberapa cepat poros berputar.

  • reset_position — Mengatur ulang posisi Sensor Rotasi saat ini ke 0.

  • set_reversed — Mengatur apakah output Sensor Rotasi dibalik.

  • changed — Mendaftarkan fungsi yang akan dijalankan setiap kali nilai Sensor Rotasi berubah.

Konstruktor — Menginisialisasi Sensor Rotasi secara manual.

posisi_tetap#

set_position mengatur posisi sensor rotasi saat ini ke suatu nilai.

Posisi adalah seberapa jauh poros telah berputar selama suatu proyek. Mengatur posisi akan mengubah nilai posisi saat ini tanpa menggerakkan poros.

Usage:
rotation_sensor.set_position(position, units)

Parameter

Keterangan

position

Nilai posisi yang akan diberikan pada Sensor Rotasi. Nilai ini dapat berupa bilangan bulat atau desimal.

units

Opsional. Satuan posisi: DEGREES (standar) atau TURNS.

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

sudut#

angle mengembalikan sudut poros saat ini sebagai nilai float.

Laporan sudut menunjukkan posisi absolut poros dalam satu putaran, dari 0 hingga 359,99 derajat. Laporan ini tidak akan direset saat proyek dimulai atau saat robot dimatikan.

Usage:
rotation_sensor.angle(units)

Parameter

Keterangan

units

Opsional. Satuan sudut: DEGREES (standar) atau TURNS.

posisi#

Posisi position mengembalikan seberapa jauh poros telah berputar.

Tidak seperti sudut, posisi dapat meningkat melebihi 359,99 derajat atau menurun di bawah 0 derajat. Posisi melacak seberapa jauh poros berputar maju atau mundur selama suatu proyek dan dapat diatur ulang sesuai kebutuhan.

Usage:
rotation_sensor.position(units)

Parameter

Keterangan

units

Opsional. Satuan posisi: DEGREES (standar) atau TURNS.

kecepatan#

velocity mengembalikan seberapa cepat poros berputar.

Usage:
rotation_sensor.velocity(units)

Parameter

Keterangan

units

Satuan kecepatan: VelocityUnits.RPM (putaran per menit) atau VelocityUnits.DPS (derajat per detik).

atur ulang_posisi#

reset_position mengatur ulang posisi Sensor Rotasi saat ini ke 0.

Usage:
rotation_sensor.reset_position()

Parameter

Keterangan

Metode ini tidak memiliki parameter.

set_terbalik#

set_reversed mengatur apakah output Sensor Rotasi dibalik.

Ketika dibalik, nilai positif menjadi negatif dan nilai negatif menjadi positif. Metode ini bekerja sama dengan mengatur parameter reverse menjadi True saat menggunakan konstruktor Rotation .

Usage:
rotation_sensor.set_reversed(value)

Parameter

Keterangan

value

Apakah akan membalikkan output Sensor Rotasi: True atau False.

berubah#

changed mendaftarkan sebuah fungsi yang akan dipanggil setiap kali nilai Sensor Rotasi berubah.

Usage:
rotation_sensor.changed(callback, arg)

Parameter

Keterangan

callback

Sebuah fungsi yang telah didefinisikan sebelumnya yang dijalankan ketika nilai Sensor Rotasi berubah.

arg

Opsional. Sebuah tuple yang berisi argumen untuk diteruskan ke fungsi callback. Lihat Menggunakan Fungsi dengan Parameter untuk informasi selengkapnya.

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

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

Konstruktor#

Konstruktor digunakan untuk membuat objek Rotation secara manual, misalnya saat mengkonfigurasi Sensor Rotasi di luar VEXcode.

Rotation#

Rotation menciptakan objek Sensor Rotasi.

Usage:
Rotation(smartport)

Parameter

Keterangan

smartport

Port Pintar yang terhubung ke Sensor Rotasi, ditulis sebagai Ports.PORTx, di mana x adalah nomor port.

reverse

Opsional. Apakah akan membalikkan output Sensor Rotasi: True atau False (default).

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