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.

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.
Rotation— Membuat Sensor Rotasi.
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 |
|---|---|
|
Nilai posisi yang akan diberikan pada Sensor Rotasi. Nilai ini dapat berupa bilangan bulat atau desimal. |
|
Opsional. Satuan posisi: |
# 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 |
|---|---|
|
Opsional. Satuan sudut: |
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 |
|---|---|
|
Opsional. Satuan posisi: |
kecepatan#
velocity mengembalikan seberapa cepat poros berputar.
Usage:
rotation_sensor.velocity(units)
Parameter |
Keterangan |
|---|---|
|
Satuan kecepatan: |
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 |
|---|---|
|
Apakah akan membalikkan output Sensor Rotasi: |
berubah#
changed mendaftarkan sebuah fungsi yang akan dipanggil setiap kali nilai Sensor Rotasi berubah.
Usage:
rotation_sensor.changed(callback, arg)
Parameter |
Keterangan |
|---|---|
|
Sebuah fungsi yang telah didefinisikan sebelumnya yang dijalankan ketika nilai Sensor Rotasi berubah. |
|
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 |
|---|---|
|
Port Pintar yang terhubung ke Sensor Rotasi, ditulis sebagai |
|
Opsional. Apakah akan membalikkan output Sensor Rotasi: |
# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)