ദൂര സെൻസർ#

ആമുഖം#

VEX IQ ഡിസ്റ്റൻസ് സെൻസറിനൊപ്പം (1st gen) sonar ക്ലാസ് ഉപയോഗിക്കുന്നു. VEX IQ ഡിസ്റ്റൻസ് സെൻസറിനൊപ്പം (2nd gen) distance ക്ലാസ് ഉപയോഗിക്കുന്നു.

രണ്ട് ഡിസ്റ്റൻസ് സെൻസറുകൾക്കും ഒരു വസ്തു സെൻസറിന് മുന്നിലാണോ എന്ന് കണ്ടെത്താനും ആ വസ്തു എത്ര ദൂരെയാണെന്ന് നൽകാനും കഴിയും. VEX IQ ഡിസ്റ്റൻസ് സെൻസറിന് (രണ്ടാം തലമുറ) കണ്ടെത്തിയ വസ്തുവിന്റെ ആപേക്ഷിക പ്രവേഗം തിരികെ നൽകാനും വസ്തു ചെറുതാണോ ഇടത്തരമാണോ വലുതാണോ എന്ന് കണക്കാക്കാനും കഴിയും.

ക്ലാസ് കൺസ്ട്രക്‌ടറുകൾ#

1 — ഈ കൺസ്ട്രക്റ്റർ ഒരു VEX IQ ഡിസ്റ്റൻസ് സെൻസർ (ഒന്നാം തലമുറ) സൃഷ്ടിക്കുന്നു.

sonar(
    int32_t index);

2 — ഈ കൺസ്ട്രക്റ്റർ ഒരു VEX IQ ഡിസ്റ്റൻസ് സെൻസർ (രണ്ടാം തലമുറ) സൃഷ്ടിക്കുന്നു.

distance(
    int32_t index);

ക്ലാസ് ഡിസ്ട്രക്റ്റർ#

distance വസ്തുവിനെ നശിപ്പിക്കുകയും അനുബന്ധ ഉറവിടങ്ങൾ പുറത്തുവിടുകയും ചെയ്യുന്നു.

1 — ഒരു VEX IQ ദൂര സെൻസറിനെ (ഒന്നാം തലമുറ) നശിപ്പിക്കുന്നു.

~sonar();

2 — ഒരു VEX IQ ദൂര സെൻസറിനെ (രണ്ടാം തലമുറ) നശിപ്പിക്കുന്നു.

~distance();

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

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

index

int32_t

ഡിസ്റ്റൻസ് സെൻസർ ബന്ധിപ്പിച്ചിരിക്കുന്ന സ്മാർട്ട് പോർട്ട്, PORTxഎന്ന് എഴുതിയിരിക്കുന്നു, ഇവിടെ x എന്നത് പോർട്ട് നമ്പറാണ് (ഉദാഹരണത്തിന്, PORT1).

ഉദാഹരണങ്ങൾ#

1 — പോർട്ട് 1 ൽ ഒരു VEX IQ ഡിസ്റ്റൻസ് സെൻസർ (ഒന്നാം തലമുറ) ഉദാഹരണം സൃഷ്ടിക്കുക.

sonar Distance1 = sonar(PORT1);

2 — പോർട്ട് 1 ൽ ഒരു VEX IQ ഡിസ്റ്റൻസ് സെൻസർ (രണ്ടാം തലമുറ) ഉദാഹരണം സൃഷ്ടിക്കുക.

distance Distance1 = distance(PORT1);

അംഗ പ്രവർത്തനങ്ങൾ#

sonar ക്ലാസ്സിൽ ഇനിപ്പറയുന്ന അംഗ ഫംഗ്‌ഷനുകൾ ഉൾപ്പെടുന്നു:

  • foundObject — ദൂര സെൻസർ നിലവിൽ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നുണ്ടോ എന്ന് നൽകുന്നു.

  • distance — ദൂര സെൻസറും ഏറ്റവും അടുത്തുള്ള കണ്ടെത്തിയ വസ്തുവും തമ്മിലുള്ള ദൂരം നൽകുന്നു.

distance ക്ലാസ്സിൽ ഇനിപ്പറയുന്ന അംഗ ഫംഗ്‌ഷനുകൾ ഉൾപ്പെടുന്നു:

  • objectDistance — ദൂര സെൻസറും ഏറ്റവും അടുത്തുള്ള കണ്ടെത്തിയ വസ്തുവും തമ്മിലുള്ള ദൂരം നൽകുന്നു.

  • objectVelocity — കണ്ടെത്തിയ വസ്തു ദൂര സെൻസറിലേക്ക് അല്ലെങ്കിൽ അതിൽ നിന്ന് എത്ര വേഗത്തിൽ നീങ്ങുന്നുവെന്ന് നൽകുന്നു.

  • objectSize — കണ്ടെത്തിയ വസ്തുവിന്റെ കണക്കാക്കിയ വലുപ്പം നൽകുന്നു.

  • isObjectDetected — ദൂര സെൻസർ നിലവിൽ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നുണ്ടോ എന്ന് നൽകുന്നു.

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

  • installed — ദൂര സെൻസർ ഇൻസ്റ്റാൾ ചെയ്ത് ബന്ധിപ്പിച്ചിട്ടുണ്ടോ എന്ന് നൽകുന്നു.

ഏതെങ്കിലും distance അല്ലെങ്കിൽ distance മെംബർ ഫംഗ്ഷനുകൾ വിളിക്കുന്നതിന് മുമ്പ്, താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ ഒരു sonar അല്ലെങ്കിൽ sonar ഉദാഹരണം സൃഷ്ടിക്കണം:

/* This constructor is required when using VS Code.
Distance Sensor configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a VEX IQ Distance Sensor (2nd gen) instance in Port 1
distance Distance1 = distance(PORT1);

foundObject#

ദൂര സെൻസർ നിലവിൽ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നുണ്ടോ എന്ന് നൽകുന്നു.

Available Functions
bool foundObject();

Parameters

ഈ ഫംഗ്ഷൻ ഒരു പാരാമീറ്ററുകളും എടുക്കുന്നില്ല.

Return Values

ദൂര സെൻസർ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നുണ്ടോ എന്ന് സൂചിപ്പിക്കുന്ന ഒരു ബൂളിയൻ നൽകുന്നു:

  • true — The Distance Sensor detects an object.
  • false — The Distance Sensor does not detect an object.
Notes - This is a VEX IQ Distance Sensor (1st gen) function.

distance#

ദൂര സെൻസറും ഏറ്റവും അടുത്തുള്ള കണ്ടെത്തിയ വസ്തുവും തമ്മിലുള്ള ദൂരം നൽകുന്നു.

Available Functions
double distance( distanceUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

distanceUnits

ദൂര യൂണിറ്റ്:

  • mm — മില്ലിമീറ്റർ (24 mm മുതൽ 1000 mm വരെ)
  • cm — സെന്റീമീറ്റർ (2.4 cm മുതൽ 100 ​​cm വരെ)
  • inches — ഇഞ്ച് (1 ഇഞ്ച് മുതൽ 40 ഇഞ്ച് വരെ)

Return Values

നിർദ്ദിഷ്ട യൂണിറ്റുകളിൽ ദൂര സെൻസറും ഏറ്റവും അടുത്തുള്ള കണ്ടെത്തിയ വസ്തുവും തമ്മിലുള്ള ദൂരത്തെ പ്രതിനിധീകരിക്കുന്ന double നൽകുന്നു.

Notes - This is a VEX IQ Distance Sensor (1st gen) function.

objectDistance#

ദൂര സെൻസറും ഏറ്റവും അടുത്തുള്ള കണ്ടെത്തിയ വസ്തുവും തമ്മിലുള്ള ദൂരം നൽകുന്നു.

Available Functions
double objectDistance( distanceUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

distanceUnits

ദൂര യൂണിറ്റ്:

  • mm — മില്ലിമീറ്റർ (20 mm മുതൽ 2000 mm വരെ)
  • cm — സെന്റീമീറ്റർ (2 cm മുതൽ 200 cm വരെ)
  • inches — ഇഞ്ച് (0.78 ഇഞ്ച് മുതൽ 78 ഇഞ്ച് വരെ)

Return Values

നിർദ്ദിഷ്ട യൂണിറ്റുകളിൽ ദൂര സെൻസറും ഏറ്റവും അടുത്തുള്ള കണ്ടെത്തിയ വസ്തുവും തമ്മിലുള്ള ദൂരത്തെ പ്രതിനിധീകരിക്കുന്ന double നൽകുന്നു.

Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

objectVelocity#

കണ്ടെത്തിയ വസ്തുവിന്റെ ആപേക്ഷിക പ്രവേഗം നൽകുന്നു.

ഡിസ്റ്റൻസ് സെൻസറിലേക്ക് വസ്തു എത്ര വേഗത്തിൽ നീങ്ങുന്നു അല്ലെങ്കിൽ അകന്നുപോകുന്നു എന്ന് പ്രവേഗം കാണിക്കുന്നു. 0 ന് സമീപമുള്ള മൂല്യം അർത്ഥമാക്കുന്നത് സെൻസറുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ വസ്തു അധികം നീങ്ങുന്നില്ല എന്നാണ്.

Available Functions
double objectVelocity();

Parameters

ഈ ഫംഗ്ഷൻ ഒരു പാരാമീറ്ററുകളും എടുക്കുന്നില്ല.

Return Values

കണ്ടെത്തിയ വസ്തുവിന്റെ ആപേക്ഷിക പ്രവേഗത്തെ m/s (മീറ്റർ പെർ സെക്കൻഡ്) ൽ പ്രതിനിധീകരിക്കുന്ന double നൽകുന്നു.

Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

objectSize#

ദൂര സെൻസർ കണ്ടെത്തിയ വസ്തുവിന്റെ കണക്കാക്കിയ വലുപ്പം തിരികെ നൽകുന്നു.

കണ്ടെത്തിയ വസ്തു സെൻസറിന്റെ കാഴ്ചയുടെ എത്രത്തോളം ഉൾക്കൊള്ളുന്നു എന്നതിനെ അടിസ്ഥാനമാക്കിയാണ് ദൂര സെൻസർ വസ്തുവിന്റെ വലുപ്പം കണക്കാക്കുന്നത്.

Available Functions
sizeType objectSize();

Parameters

ഈ ഫംഗ്ഷൻ ഒരു പാരാമീറ്ററുകളും എടുക്കുന്നില്ല.

Return Values

കണ്ടെത്തിയ വസ്തുവിന്റെ കണക്കാക്കിയ വലുപ്പം സൂചിപ്പിക്കുന്ന sizeType നൽകുന്നു:

  • none — No object is detected.
  • small — A small object is detected.
  • medium — A medium object is detected.
  • large — A large object is detected.
Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

isObjectDetected#

ദൂര സെൻസർ നിലവിൽ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നുണ്ടോ എന്ന് നൽകുന്നു.

Available Functions
bool isObjectDetected();

Parameters

ഈ ഫംഗ്ഷൻ ഒരു പാരാമീറ്ററുകളും എടുക്കുന്നില്ല.

Return Values

ദൂര സെൻസർ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നുണ്ടോ എന്ന് സൂചിപ്പിക്കുന്ന ഒരു ബൂളിയൻ നൽകുന്നു:

  • true — The Distance Sensor detects an object.
  • false — The Distance Sensor does not detect an object.
Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

changed#

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

Available Functions
void changed( void (* callback)(void) );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

callback

void (*)(void)

കണ്ടെത്തിയ ദൂര മൂല്യം മാറുമ്പോൾ വിളിക്കപ്പെടുന്ന ഒരു ഫംഗ്ഷനിലേക്കുള്ള ഒരു പോയിന്റർ. ഫംഗ്ഷൻ ഒരു പാരാമീറ്ററും എടുക്കരുത്, കൂടാതെ void തിരികെ നൽകണം.

Return Values

ഈ ഫംഗ്ഷൻ ഒരു മൂല്യം തിരികെ നൽകുന്നില്ല.

Notes - This is a VEX IQ Distance Sensor (1st gen) or (2nd gen) function.

installed#

ദൂര സെൻസർ ഇൻസ്റ്റാൾ ചെയ്‌ത് ബന്ധിപ്പിച്ചിട്ടുണ്ടോ എന്ന് നൽകുന്നു.

Available Functions
bool installed();

Parameters

ഈ ഫംഗ്ഷൻ ഒരു പാരാമീറ്ററുകളും എടുക്കുന്നില്ല.

Return Values

ദൂര സെൻസർ ഇൻസ്റ്റാൾ ചെയ്‌തിട്ടുണ്ടോ എന്നും ബന്ധിപ്പിച്ചിട്ടുണ്ടോ എന്നും സൂചിപ്പിക്കുന്ന ഒരു ബൂളിയൻ നൽകുന്നു:

  • true — The Distance Sensor is installed and connected.
  • false — The Distance Sensor is not installed or not connected.
Notes - This is a VEX IQ Distance Sensor (1st gen) or (2nd gen) function.