Sensor Giroskop#
Perkenalan#
Kelas gyro digunakan dengan Sensor Gyro untuk mengukur pergerakan rotasi di sekitar satu sumbu. Sensor ini dapat melacak arah hadap robot dan seberapa jauh robot telah berputar.
Konstruktor Kelas#
gyro(
int32_t index );
Destruktor Kelas#
Menghancurkan objek gyro dan melepaskan sumber daya terkait.
virtual ~gyro();
Parameter#
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Port Pintar yang terhubung ke Sensor Gyro, ditulis sebagai |
Contoh#
// Create a gyro instance in Port 1
gyro Gyro1 = gyro(PORT1);
Fungsi Keanggotaan#
Kelas gyro mencakup fungsi anggota berikut:
calibrate— Mengkalibrasi Sensor Giroskop.setHeading— Mengatur arah sensor giroskop saat ini ke nilai arah baru.setRotation— Mengatur rotasi sensor giroskop saat ini ke nilai rotasi baru.heading— Mengembalikan arah yang dihadapi oleh Sensor Gyro.rotation— Mengembalikan seberapa jauh Sensor Gyro telah berputar.rate— Mengembalikan seberapa cepat Sensor Gyro berputar.
Sebelum memanggil fungsi anggota gyro apa pun, sebuah instance gyro harus dibuat, seperti yang ditunjukkan di bawah ini:
/* This constructor is required when using VS Code.
Gyro Sensor configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a gyro instance in Port 1
gyro Gyro1 = gyro(PORT1);
calibrate#
Mengkalibrasi Sensor Giroskop.
Available Functionsvoid calibrate();
Fungsi ini tidak menerima parameter apa pun.
Return ValuesFungsi ini tidak mengembalikan nilai.
NotesKalibrasi membantu Sensor Giroskop mengukur putaran dengan benar. Jaga agar sensor tetap diam selama kalibrasi. Jika sensor bergerak selama kalibrasi, nilai arah, rotasi, dan laju mungkin tidak mengukur putaran dengan benar.
// Calibrate the Gyro Sensor before turning.
Gyro1.calibrate();
setHeading#
Mengatur arah sensor giroskop saat ini ke nilai tertentu.
Heading adalah arah yang dihadapi oleh Sensor Gyro, diukur dari 0 hingga 359,99 derajat. Mengatur heading akan mengubah referensi arah sensor saat ini.
Available Functionsvoid setHeading(
double value,
rotationUnits units );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Nilai yang akan digunakan untuk judul baru. |
|
|
Satuan yang mewakili arah:
|
Fungsi ini tidak mengembalikan nilai.
setRotation#
Mengatur rotasi sensor giroskop saat ini ke nilai tertentu.
Rotasi adalah seberapa besar sensor giroskop telah berputar. Tidak seperti arah, rotasi dapat meningkat melebihi 359,99 derajat atau menurun di bawah 0 derajat.
Available Functionsvoid setRotation(
double value,
rotationUnits units );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Nilai yang akan digunakan untuk nilai rotasi baru. |
|
|
Satuan yang mewakili nilai rotasi:
|
Fungsi ini tidak mengembalikan nilai.
heading#
Mengembalikan arah haluan sensor giroskop saat ini.
Arah haluan adalah arah yang dituju oleh Sensor Gyro, diukur dari 0 hingga 359,99 derajat. Jika sensor berputar melewati 359,99 derajat, arah haluan akan kembali ke 0 derajat.
Available Functionsdouble heading(
rotationUnits units = degrees );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Satuan yang mewakili arah haluan:
|
Mengembalikan nilai double yang mewakili arah giroskop saat ini dalam satuan yang ditentukan, dengan nilai default degrees.
// Get the current heading for the Gyro.
double value = Gyro1.heading();
Brain.Screen.print(value);
rotation#
Mengembalikan rotasi sensor giroskop saat ini.
Rotasi adalah seberapa besar sensor giroskop telah berputar. Tidak seperti arah, rotasi dapat meningkat melebihi 359,99 derajat atau menurun di bawah 0 derajat. Misalnya, melakukan dua putaran penuh ke kanan menghasilkan rotasi 720 derajat. Memutar satu putaran penuh ke kiri dari 0 derajat menghasilkan rotasi -360 derajat.
Available Functionsdouble rotation(
rotationUnits units = degrees );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Satuan yang mewakili nilai rotasi:
|
Mengembalikan nilai double yang mewakili nilai rotasi sensor giroskop saat ini dalam satuan yang ditentukan, dengan nilai default degrees.
// Get the current rotation for the Gyro.
double value = Gyro1.rotation();
Brain.Screen.print(value);
rate#
Mengembalikan laju putaran Sensor Giroskop.
Kecepatan putar adalah seberapa cepat sensor giroskop berputar. Nilainya bisa positif atau negatif tergantung pada arah putaran sensor.
Available Functionsdouble rate(
rateUnits units = rateUnits::dps );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Satuan yang mewakili kecepatan:
|
Mengembalikan nilai double yang mewakili laju perubahan sensor giroskop saat ini dalam satuan yang ditentukan, dengan nilai default rateUnits::dps.