ഗൈറോ#
ആമുഖം#
ഗൈറോ സെൻസർ എന്നത് ഒരു അച്ചുതണ്ടിന് ചുറ്റുമുള്ള ഭ്രമണം കണ്ടെത്തുന്ന ഒരു ചലന സെൻസറാണ്. റോബോട്ട് എത്രത്തോളം തിരിഞ്ഞിട്ടുണ്ടെന്ന് ഇതിന് അളക്കാൻ കഴിയും, ഇത് ഓറിയന്റേഷനും തലക്കെട്ടും ട്രാക്ക് ചെയ്യാൻ അനുവദിക്കുന്നു.
ഈ പേജിൽ ഗൈറോ സെൻസർ നാമത്തിന്റെ ഉദാഹരണമായി drivetrain_gyro ഉപയോഗിക്കുന്നു. ആവശ്യാനുസരണം നിങ്ങളുടെ സ്വന്തം കോൺഫിഗർ ചെയ്ത പേര് ഉപയോഗിച്ച് അത് മാറ്റിസ്ഥാപിക്കുക.
ലഭ്യമായ എല്ലാ രീതികളുടെയും ഒരു ലിസ്റ്റ് താഴെ കൊടുക്കുന്നു:
പ്രവർത്തനങ്ങൾ — ഗൈറോ സെൻസറിന്റെ തലക്കെട്ടും ഭ്രമണവും കാലിബ്രേറ്റ് ചെയ്യുക അല്ലെങ്കിൽ ക്രമീകരിക്കുക.
calibrate— സ്ഥിരതയുള്ള ഹെഡിംഗ് ട്രാക്കിംഗിനായി ഗൈറോ സെൻസർ കാലിബ്രേറ്റ് ചെയ്യുന്നു.set_heading— ഗൈറോ സെൻസറിന്റെ ഹെഡിംഗ് ഒരു നിർദ്ദിഷ്ട മൂല്യത്തിലേക്ക് സജ്ജമാക്കുന്നു.set_rotation— ഗൈറോ സെൻസറിന്റെ ഭ്രമണ മൂല്യം സജ്ജമാക്കുന്നു.reset_heading— ഗൈറോ സെൻസറിന്റെ തലക്കെട്ട് 0 ആയി സജ്ജമാക്കുന്നു.reset_rotation— ഗൈറോ സെൻസറിന്റെ ഭ്രമണം 0 ആയി സജ്ജമാക്കുന്നു.
ഗെറ്ററുകൾ — ഗൈറോ സെൻസറിന്റെ തലക്കെട്ട്, ഭ്രമണം, സ്റ്റാറ്റസ് എന്നിവ വായിക്കുക.
heading— നിലവിലെ തലക്കെട്ട് നൽകുന്നു.rotation— സഞ്ചിത ഭ്രമണം നൽകുന്നു.rate— x, y, അല്ലെങ്കിൽ z അക്ഷത്തിന് ചുറ്റുമുള്ള കോണീയ പ്രവേഗം നൽകുന്നു.is_calibrating— ഗൈറോ സെൻസർ കാലിബ്രേറ്റ് ചെയ്യുന്നുണ്ടോ ഇല്ലയോ എന്ന് നൽകുന്നു.installed— ഒരു ഗൈറോ സെൻസർ തലച്ചോറുമായി ബന്ധിപ്പിച്ചിട്ടുണ്ടോ ഇല്ലയോ എന്ന് നൽകുന്നു.
കോൾബാക്ക് — ഗൈറോ സെൻസർ ചലനമോ മാറ്റമോ കണ്ടെത്തുമ്പോൾ കോഡ് പ്രവർത്തിപ്പിക്കുക.
changed— ഗൈറോ സെൻസർ മാറ്റം കണ്ടെത്തുമ്പോൾ വിളിക്കാൻ ഒരു ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുന്നു.
കൺസ്ട്രക്റ്റർമാർ — ഒരു ഗൈറോ സെൻസർ സ്വമേധയാ ഇനീഷ്യലൈസ് ചെയ്ത് കോൺഫിഗർ ചെയ്യുക.
Gyro— ഒരു ഗൈറോ സെൻസർ സൃഷ്ടിക്കുന്നു.
പ്രവർത്തനങ്ങൾ#
calibrate#
calibrate ഗൈറോ സെൻസറിനെ കാലിബ്രേറ്റ് ചെയ്യുന്നു. തുടർന്നുള്ള എല്ലാ ലൈനുകളും എക്സിക്യൂട്ട് ചെയ്യുന്നതിന് മുമ്പ് കാലിബ്രേഷൻ പൂർത്തിയാകുന്നതുവരെ കാത്തിരിക്കും. ഒരു നിശ്ചിത കാലയളവിൽ സെൻസർ ശബ്ദവും ഡ്രിഫ്റ്റും അളക്കുകയും നഷ്ടപരിഹാരം നൽകുകയും ചെയ്യുന്ന ഒരു ആന്തരിക നടപടിക്രമമാണ് കാലിബ്രേഷൻ. ഈ സമയത്ത്, ഗൈറോ സെൻസർ പൂർണ്ണമായും നിശ്ചലമായിരിക്കണം (അതായത്, ബാഹ്യ ചലനങ്ങളൊന്നുമില്ലാതെ സ്ഥിരതയുള്ള പ്രതലത്തിൽ). കാലിബ്രേഷൻ സമയത്ത് ചലനം കൃത്യമല്ലാത്ത ഫലങ്ങൾ നൽകും.
Usage:
calibrate()
പാരാമീറ്റർ |
വിവരണം |
|---|---|
ഈ രീതിക്ക് പാരാമീറ്ററുകൾ ഇല്ല. |
# Start Gyro Sensor calibration
drivetrain_gyro.calibrate()
# Print after calibration
while drivetrain_gyro.is_calibrating():
wait(0.1, SECONDS)
brain.screen.print("Done!")
set_heading#
set_heading ഗൈറോ സെൻസറിന്റെ ഹെഡിംഗ് ഒരു പ്രത്യേക മൂല്യത്തിലേക്ക് സജ്ജമാക്കുന്നു.
Usage:
set_heading(value, units)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
മൂല്യം |
സജ്ജീകരിക്കേണ്ട തലക്കെട്ട് മൂല്യം. |
യൂണിറ്റുകൾ |
ഓപ്ഷണൽ. പുതിയ തലക്കെട്ടിനെ പ്രതിനിധീകരിക്കാൻ ഉപയോഗിക്കുന്ന യൂണിറ്റ്:
|
# Turn the robot around
drivetrain_gyro.set_heading(180)
drivetrain.turn_to_heading(0)
set_rotation#
set_rotation ഗൈറോ സെൻസറിന്റെ ഭ്രമണത്തെ ഒരു പ്രത്യേക മൂല്യത്തിലേക്ക് സജ്ജമാക്കുന്നു.
Usage:
set_rotation(value, units)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
സജ്ജീകരിക്കേണ്ട തലക്കെട്ട് മൂല്യം. |
|
ഓപ്ഷണൽ. പുതിയ റൊട്ടേഷൻ മൂല്യം പ്രതിനിധീകരിക്കാൻ ഉപയോഗിക്കുന്ന യൂണിറ്റ്:
|
# Turn the robot around
drivetrain_gyro.set_rotation(-180)
drivetrain.turn_to_rotation(0)
reset_heading#
reset_heading ഗൈറോ സെൻസറിന്റെ ഹെഡിംഗ് 0 ആയി പുനഃസജ്ജമാക്കുന്നു.
Usage:
reset_heading()
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
ഈ രീതിക്ക് പാരാമീറ്ററുകൾ ഇല്ല. |
# Turn the robot before and after resetting the heading
drivetrain.turn_to_heading(90, DEGREES)
wait(0.5,SECONDS)
drivetrain_gyro.reset_heading()
drivetrain.turn_to_heading(90, DEGREES)
reset_rotation#
reset_rotation ഗൈറോ സെൻസറിന്റെ ഭ്രമണം 0 ആയി പുനഃസജ്ജമാക്കുന്നു.
Usage:
reset_rotation()
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
ഈ രീതിക്ക് പാരാമീറ്ററുകൾ ഇല്ല. |
# Turn the robot before and after resetting the rotation
drivetrain.turn_to_rotation(-90, DEGREES)
wait(0.5,SECONDS)
drivetrain_gyro.reset_rotation()
drivetrain.turn_to_rotation(-90, DEGREES)
ഗെറ്ററുകൾ#
heading#
heading ഗൈറോ സെൻസറിന്റെ നിലവിലെ തലക്കെട്ട് നൽകുന്നു.
Usage:
heading(units)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
ഓപ്ഷണൽ. തലക്കെട്ടിനെ പ്രതിനിധീകരിക്കാൻ ഉപയോഗിക്കുന്ന യൂണിറ്റ്:
|
# Display the heading after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print(drivetrain_gyro.heading())
rotation#
rotation ഗൈറോ സെൻസറിന്റെ നിലവിലെ റൊട്ടേഷൻ നൽകുന്നു.
Usage:
rotation(units)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
ഓപ്ഷണൽ. ഭ്രമണത്തെ പ്രതിനിധീകരിക്കാൻ ഉപയോഗിക്കുന്ന യൂണിറ്റ്:
|
# Display the rotation after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print(drivetrain_gyro.rotation())
rate#
rate എന്നത് നിർദ്ദിഷ്ട യൂണിറ്റുകളിൽ ഗൈറോ സെൻസറിന്റെ ഭ്രമണത്തിന്റെ നിലവിലെ മാറ്റ നിരക്ക് നൽകുന്നു.
Usage:
rate(units)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
ഓപ്ഷണൽ. ഗൈറോ നിരക്ക് പ്രതിനിധീകരിക്കാൻ ഉപയോഗിക്കുന്ന യൂണിറ്റ്:
|
# Display the rate of change of
# rotation while turning
drivetrain.turn(RIGHT)
wait(1, SECONDS)
brain.screen.print(drivetrain_gyro.rate())
drivetrain.stop()
is_calibrating#
ഗൈറോ സെൻസർ നിലവിൽ കാലിബ്രേറ്റ് ചെയ്യുന്നുണ്ടോ എന്ന് is_calibrating പരിശോധിക്കുന്നു.
True— ഗൈറോ സെൻസർ കാലിബ്രേറ്റ് ചെയ്യുന്നു.False— ഗൈറോ സെൻസർ കാലിബ്രേറ്റ് ചെയ്യുന്നില്ല.
Usage:
is_calibrating()
പാരാമീറ്റർ |
വിവരണം |
|---|---|
ഈ രീതിക്ക് പാരാമീറ്ററുകൾ ഇല്ല. |
# Start Gyro Sensor calibration.
drivetrain_gyro.calibrate()
# Print after calibration
while drivetrain_gyro.is_calibrating():
wait(0.1, SECONDS)
brain.screen.print("Done!")
installed#
installed ഗൈറോ സെൻസർ തലച്ചോറുമായി ബന്ധിപ്പിച്ചിട്ടുണ്ടോ എന്ന് സൂചിപ്പിക്കുന്ന ഒരു ബൂളിയൻ തിരികെ നൽകുന്നു.
True— ഗൈറോ സെൻസർ തലച്ചോറുമായി ബന്ധിപ്പിച്ചിരിക്കുന്നു.False— ഗൈറോ സെൻസർ തലച്ചോറുമായി ബന്ധിപ്പിച്ചിട്ടില്ല.
Usage:
installed()
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
ഈ രീതിക്ക് പാരാമീറ്ററുകൾ ഇല്ല. |
# Display a message if the Gyro Sensor is
# installed.
if drivetrain_gyro.installed():
brain.screen.print("Installed!")
തിരിച്ചുവിളിക്കുക#
changed#
ഗൈറോ സെൻസറിന്റെ തലക്കെട്ട് മാറുമ്പോൾ changed ഒരു കോൾബാക്ക് ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുന്നു.
Usage:
changed(callback, arg)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
ഗൈറോ സെൻസർ ഹെഡിംഗ് മാറുമ്പോൾ വിളിക്കേണ്ട കോൾബാക്ക് ഫംഗ്ഷൻ. |
|
ഓപ്ഷണൽ. കോൾബാക്ക് ഫംഗ്ഷനിലേക്ക് കൈമാറേണ്ട ഒരു കൂട്ടം ആർഗ്യുമെന്റുകൾ. |
def gyro_changed():
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print("Heading: ")
brain.screen.print(drivetrain_gyro.heading())
# Display the heading when the gyro detects a change
drivetrain.turn_for(RIGHT, 90, DEGREES, wait=False)
drivetrain_gyro.changed(gyro_changed)
കൺസ്ട്രക്ടർമാർ#
VEXcode-ന് പുറത്ത് ഒരു Gyro സെൻസർ കോൺഫിഗർ ചെയ്യുന്നതിന് ആവശ്യമായ Gyro ഒബ്ജക്റ്റുകൾ സ്വമേധയാ സൃഷ്ടിക്കാൻ കൺസ്ട്രക്ടറുകൾ ഉപയോഗിക്കുന്നു.
Gyro#
Gyro ഒരു ഗൈറോ സെൻസർ സൃഷ്ടിക്കുന്നു.
Usage:
Gyro(smartport)
പാരാമീറ്റർ |
വിവരണം |
|---|---|
|
ഗൈറോ സെൻസർ ബന്ധിപ്പിച്ചിരിക്കുന്ന സ്മാർട്ട് പോർട്ട്, PORTx എന്ന് എഴുതിയിരിക്കുന്നു, ഇവിടെ x എന്നത് പോർട്ടിന്റെ നമ്പറാണ്. |
# Create the Brain
brain = Brain()
# When constructing Gyro Sensor "drivetrain_gyro" with a
# SmartDrive "drivetrain"
drivetrain_gyro = Gyro(Ports.PORT1)
drivetrain = SmartDrive(left_drive_smart, right_drive_smart, drivetrain_gyro, 200)
drivetrain_gyro.set_heading(180)
drivetrain.turn_to_heading(0)