റൊട്ടേഷൻ സെൻസർ#

ആമുഖം#

റൊട്ടേഷൻ സെൻസർ ഒരു ഷാഫ്റ്റിന്റെ ഭ്രമണം അളക്കുന്നു. ഒരു റോബോട്ടിൽ ഒരു ഷാഫ്റ്റ് കറങ്ങുന്നിടത്ത് എവിടെയും ഇത് ഉപയോഗിക്കാൻ കഴിയും, ആ ഷാഫ്റ്റ് ഒരു മോട്ടോറുമായി നേരിട്ട് ബന്ധിപ്പിച്ചിട്ടില്ലെങ്കിൽ പോലും.

ഒരു മോട്ടോറിന് സ്വന്തം ഭ്രമണം ട്രാക്ക് ചെയ്യാൻ കഴിയുന്ന ഒരു ബിൽറ്റ്-ഇൻ എൻകോഡർ ഉണ്ട്. റൊട്ടേഷൻ സെൻസർ ഒരു പ്രത്യേക ഷാഫ്റ്റിന്റെ ഭ്രമണം ട്രാക്ക് ചെയ്യാൻ കഴിയുന്ന ഒരു ബാഹ്യ എൻകോഡർ പോലെയാണ് പ്രവർത്തിക്കുന്നത്.

റൊട്ടേഷൻ സെൻസറിന് ഷാഫ്റ്റിന്റെ കോൺ, സ്ഥാനം, പ്രവേഗം എന്നിവ തിരികെ നൽകാൻ കഴിയും. 0 മുതൽ 359.99 ഡിഗ്രി വരെയുള്ള ഷാഫ്റ്റിന്റെ കേവല സ്ഥാനമാണ് ആംഗിൾ. ഒരു പ്രോജക്റ്റ് ആരംഭിക്കുമ്പോഴോ റോബോട്ട് ഓഫ് ചെയ്യുമ്പോഴോ ഇത് പുനഃസജ്ജമാക്കില്ല. ഒരു പ്രോജക്റ്റ് സമയത്ത് ഷാഫ്റ്റ് എത്ര ഡിഗ്രി മുന്നോട്ട് അല്ലെങ്കിൽ പിന്നിലേക്ക് തിരിഞ്ഞുവെന്നോ തിരിഞ്ഞുവെന്നോ പൊസിഷൻ ട്രാക്ക് ചെയ്യുന്നു, ആവശ്യാനുസരണം ഇത് പുനഃസജ്ജമാക്കാനും കഴിയും.

റൊട്ടേഷൻ സെൻസർ 1/8 ഇഞ്ച്, 1/4 ഇഞ്ച് സ്റ്റാൻഡേർഡ് VEX ഷാഫ്റ്റുകളുമായി പൊരുത്തപ്പെടുന്നു.

VEX EXP റൊട്ടേഷൻ സെൻസർ.

ഈ പേജിൽ റൊട്ടേഷൻ സെൻസർ നാമത്തിന് ഉദാഹരണമായി rotation_sensor ഉപയോഗിക്കുന്നു. ആവശ്യാനുസരണം നിങ്ങളുടെ സ്വന്തം കോൺഫിഗർ ചെയ്ത പേര് ഉപയോഗിച്ച് ഇത് മാറ്റിസ്ഥാപിക്കുക.

ലഭ്യമായ രീതികളുടെ ഒരു ലിസ്റ്റ് താഴെ കൊടുക്കുന്നു:

  • set_position — റൊട്ടേഷൻ സെൻസറിന്റെ നിലവിലെ സ്ഥാനം ഒരു പ്രത്യേക മൂല്യത്തിലേക്ക് സജ്ജമാക്കുന്നു.

  • angle — ഷാഫ്റ്റിന്റെ നിലവിലെ കോൺ 0 മുതൽ 359.99 ഡിഗ്രി വരെ നൽകുന്നു.

  • position — ഷാഫ്റ്റ് ഡിഗ്രികളിലോ തിരിവുകളിലോ എത്ര ദൂരം കറങ്ങി എന്ന് നൽകുന്നു.

  • velocity — ഷാഫ്റ്റ് എത്ര വേഗത്തിൽ കറങ്ങുന്നുവെന്ന് നൽകുന്നു.

  • reset_position — റൊട്ടേഷൻ സെൻസറിന്റെ നിലവിലെ സ്ഥാനം 0 ആയി പുനഃസജ്ജമാക്കുന്നു.

  • set_reversed — റൊട്ടേഷൻ സെൻസറിന്റെ ഔട്ട്‌പുട്ട് വിപരീതമാണോ എന്ന് സജ്ജമാക്കുന്നു.

  • changed — റൊട്ടേഷൻ സെൻസറിന്റെ മൂല്യം മാറുമ്പോഴെല്ലാം പ്രവർത്തിപ്പിക്കുന്നതിനായി ഒരു ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുന്നു.

കൺസ്ട്രക്ടർ — ഒരു റൊട്ടേഷൻ സെൻസർ സ്വമേധയാ ആരംഭിക്കുക.

  • Rotation — ഒരു റൊട്ടേഷൻ സെൻസർ സൃഷ്ടിക്കുന്നു.

സ്ഥാനം_സജ്ജമാക്കുക#

set_position റൊട്ടേഷൻ സെൻസറിന്റെ നിലവിലെ സ്ഥാനം ഒരു മൂല്യത്തിലേക്ക് സജ്ജമാക്കുന്നു.

ഒരു പ്രോജക്റ്റ് സമയത്ത് ഷാഫ്റ്റ് എത്ര ദൂരം കറങ്ങി എന്നതിനെയാണ് പൊസിഷൻ എന്ന് പറയുന്നത്. പൊസിഷൻ സജ്ജീകരിക്കുന്നത് ഷാഫ്റ്റ് നീക്കാതെ തന്നെ നിലവിലെ പൊസിഷൻ മൂല്യം മാറ്റുന്നു.

Usage:
rotation_sensor.set_position(position, units)

പാരാമീറ്ററുകൾ

വിവരണം

position

റൊട്ടേഷൻ സെൻസറിന് നൽകേണ്ട സ്ഥാന മൂല്യം. ഇത് ഒരു പൂർണ്ണസംഖ്യയോ ദശാംശമോ ആകാം.

units

ഓപ്ഷണൽ. സ്ഥാന യൂണിറ്റ്: DEGREES (സ്ഥിരസ്ഥിതി) അല്ലെങ്കിൽ TURNS.

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

ആംഗിൾ#

angle ഷാഫ്റ്റിന്റെ നിലവിലെ കോൺ ഒരു ഫ്ലോട്ട് ആയി തിരികെ നൽകുന്നു.

0 മുതൽ 359.99 ഡിഗ്രി വരെയുള്ള ഒരു ഭ്രമണത്തിനുള്ളിൽ ഷാഫ്റ്റിന്റെ കേവല സ്ഥാനം ആംഗിൾ റിപ്പോർട്ട് ചെയ്യുന്നു. ഒരു പ്രോജക്റ്റ് ആരംഭിക്കുമ്പോഴോ റോബോട്ട് ഓഫ് ചെയ്യുമ്പോഴോ ഇത് പുനഃസജ്ജമാക്കില്ല.

Usage:
rotation_sensor.angle(units)

പാരാമീറ്ററുകൾ

വിവരണം

units

ഓപ്ഷണൽ. ആംഗിൾ യൂണിറ്റ്: DEGREES (സ്ഥിരസ്ഥിതി) അല്ലെങ്കിൽ TURNS.

സ്ഥാനം#

position ഷാഫ്റ്റ് എത്ര ദൂരം കറങ്ങി എന്ന് നൽകുന്നു.

ആംഗിളിൽ നിന്ന് വ്യത്യസ്തമായി, സ്ഥാനം 359.99 ഡിഗ്രിയിൽ കൂടുതൽ വർദ്ധിക്കുകയോ 0 ഡിഗ്രിയിൽ താഴെ കുറയുകയോ ചെയ്യാം. ഒരു പ്രോജക്റ്റ് സമയത്ത് ഷാഫ്റ്റ് എത്രത്തോളം മുന്നോട്ട് കറങ്ങുന്നു അല്ലെങ്കിൽ പിന്നോട്ട് തിരിയുന്നു എന്ന് പൊസിഷൻ ട്രാക്ക് ചെയ്യുന്നു, ആവശ്യാനുസരണം പുനഃസജ്ജമാക്കാനും കഴിയും.

Usage:
rotation_sensor.position(units)

പാരാമീറ്ററുകൾ

വിവരണം

units

ഓപ്ഷണൽ. സ്ഥാന യൂണിറ്റ്: DEGREES (സ്ഥിരസ്ഥിതി) അല്ലെങ്കിൽ TURNS.

വേഗത#

velocity ഷാഫ്റ്റ് എത്ര വേഗത്തിൽ കറങ്ങുന്നുവെന്ന് നൽകുന്നു.

Usage:
rotation_sensor.velocity(units)

പാരാമീറ്ററുകൾ

വിവരണം

units

പ്രവേഗ യൂണിറ്റ്: VelocityUnits.RPM (മിനിറ്റിൽ പരിക്രമണം) അല്ലെങ്കിൽ VelocityUnits.DPS (സെക്കൻഡിൽ ഡിഗ്രി).

സ്ഥാനം പുനഃസജ്ജമാക്കുക#

reset_position റൊട്ടേഷൻ സെൻസറിന്റെ നിലവിലെ സ്ഥാനം 0 ആയി പുനഃസജ്ജമാക്കുന്നു.

Usage:
rotation_sensor.reset_position()

പാരാമീറ്ററുകൾ

വിവരണം

ഈ രീതിക്ക് പാരാമീറ്ററുകൾ ഇല്ല.

സെറ്റ്_റിവേഴ്‌സ്ഡ്#

set_reversed റൊട്ടേഷൻ സെൻസറിന്റെ ഔട്ട്‌പുട്ട് വിപരീതമാക്കണോ എന്ന് സജ്ജമാക്കുന്നു.

വിപരീതമാക്കുമ്പോൾ, പോസിറ്റീവ് മൂല്യങ്ങൾ നെഗറ്റീവ് ആയി മാറുകയും നെഗറ്റീവ് മൂല്യങ്ങൾ പോസിറ്റീവ് ആയി മാറുകയും ചെയ്യുന്നു. reverse കൺസ്ട്രക്റ്റർ ഉപയോഗിക്കുമ്പോൾ True പാരാമീറ്റർ Rotation ആയി സജ്ജീകരിക്കുന്നതിന് തുല്യമാണ് ഈ രീതി പ്രവർത്തിക്കുന്നത്.

Usage:
rotation_sensor.set_reversed(value)

പാരാമീറ്ററുകൾ

വിവരണം

value

റൊട്ടേഷൻ സെൻസർ ഔട്ട്‌പുട്ട് റിവേഴ്‌സ് ചെയ്യണോ എന്ന്: True അല്ലെങ്കിൽ False.

മാറ്റി#

റൊട്ടേഷൻ സെൻസറിന്റെ മൂല്യം മാറുമ്പോഴെല്ലാം വിളിക്കേണ്ട ഒരു ഫംഗ്ഷൻ changed രജിസ്റ്റർ ചെയ്യുന്നു.

Usage:
rotation_sensor.changed(callback, arg)

പാരാമീറ്ററുകൾ

വിവരണം

callback

റൊട്ടേഷൻ സെൻസറിന്റെ മൂല്യം മാറുമ്പോൾ പ്രവർത്തിക്കുന്ന, മുമ്പ് നിർവചിച്ച ഒരു ഫംഗ്ഷൻ.

arg

ഓപ്ഷണൽ. കോൾബാക്ക് ഫംഗ്ഷനിലേക്ക് കൈമാറുന്നതിനുള്ള ആർഗ്യുമെന്റുകൾ അടങ്ങിയ ഒരു ട്യൂപ്പിൾ. കൂടുതൽ വിവരങ്ങൾക്ക് പാരാമീറ്ററുകൾ ഉപയോഗിച്ച് ഫംഗ്ഷനുകൾ ഉപയോഗിക്കുന്നു കാണുക.

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

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

കൺസ്ട്രക്ടർ#

VEXcode-ന് പുറത്ത് ഒരു റൊട്ടേഷൻ സെൻസർ കോൺഫിഗർ ചെയ്യുമ്പോൾ പോലെ, Rotation ഒബ്‌ജക്റ്റുകൾ സ്വമേധയാ സൃഷ്ടിക്കാൻ കൺസ്ട്രക്‌ടറുകൾ ഉപയോഗിക്കുന്നു.

Rotation#

Rotation ഒരു റൊട്ടേഷൻ സെൻസർ ഒബ്ജക്റ്റ് സൃഷ്ടിക്കുന്നു.

Usage:
Rotation(smartport)

പാരാമീറ്റർ

വിവരണം

smartport

റൊട്ടേഷൻ സെൻസർ ബന്ധിപ്പിച്ചിരിക്കുന്ന സ്മാർട്ട് പോർട്ട്, Ports.PORTx, ഇവിടെ x എന്നത് പോർട്ട് നമ്പറാണ്.

reverse

ഓപ്ഷണൽ. റൊട്ടേഷൻ സെൻസർ ഔട്ട്‌പുട്ട് റിവേഴ്‌സ് ചെയ്യണോ: True അല്ലെങ്കിൽ False (ഡിഫോൾട്ട്).

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