ഒബ്ജക്റ്റ് സെൻസർ#
ആമുഖം#
ഒബ്ജക്റ്റ് സെൻസർ എന്നത് ഒരു ഇൻഫ്രാറെഡ് (IR) പ്രോക്സിമിറ്റി സെൻസറാണ്, ഇത് പ്രതിഫലിക്കുന്ന IR പ്രകാശം ഉപയോഗിച്ച് ഒരു വസ്തു അടുത്തെത്തുമ്പോൾ അത് കണ്ടെത്തുന്നു.

ഈ പേജിൽ ഒബ്ജക്റ്റ് സെൻസർ നാമത്തിന് ഉദാഹരണമായി object_sensor ഉപയോഗിക്കുന്നു. ആവശ്യാനുസരണം നിങ്ങളുടെ സ്വന്തം കോൺഫിഗർ ചെയ്ത പേര് ഉപയോഗിച്ച് ഇത് മാറ്റിസ്ഥാപിക്കുക.
ലഭ്യമായ രീതികളുടെ ഒരു ലിസ്റ്റ് താഴെ കൊടുക്കുന്നു:
reflectivity– വസ്തുവിൽ നിന്ന് പ്രതിഫലിക്കുന്ന പ്രകാശത്തിന്റെ അളവിനെ ഒരു ശതമാനമായി പ്രതിനിധീകരിക്കുന്ന ഒരുintegerനൽകുന്നു.is_object_detected– ഒബ്ജക്റ്റ് സെൻസർ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നുണ്ടോ എന്ന് നൽകുന്നു.set_threshold– ഒരു വസ്തു കണ്ടെത്തുന്നതിന് മുമ്പ് ആവശ്യമായ പ്രതിഫലിക്കുന്ന പ്രകാശത്തിന്റെ അളവ് സജ്ജമാക്കുന്നു.object_detected– ഒബ്ജക്റ്റ് സെൻസർ ഒരു പുതിയ ഒബ്ജക്റ്റ് കണ്ടെത്തുമ്പോഴെല്ലാം വിളിക്കേണ്ട ഒരു ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുന്നു.object_lost– ഒബ്ജക്റ്റ് സെൻസർ കണ്ടെത്തിയ ഒരു ഒബ്ജക്റ്റ് നഷ്ടപ്പെടുത്തുമ്പോഴെല്ലാം വിളിക്കേണ്ട ഒരു ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുന്നു.changed– ഒബ്ജക്റ്റ് സെൻസറിന്റെ മൂല്യം മാറുമ്പോഴെല്ലാം വിളിക്കേണ്ട ഒരു ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുന്നു.
കൺസ്ട്രക്ടർ - ഒരു ഒബ്ജക്റ്റ് സെൻസർ സ്വമേധയാ ഇനീഷ്യലൈസ് ചെയ്യുക.
ObjectDetector– ഒരു ഒബ്ജക്റ്റ് സെൻസർ സൃഷ്ടിക്കുക.
പ്രതിഫലനശേഷി#
reflectivity ഒരു integer നൽകുന്നു, അത് വസ്തുവിൽ നിന്ന് പ്രതിഫലിക്കുന്ന പ്രകാശത്തിന്റെ അളവിനെ ഒരു ശതമാനമായി പ്രതിനിധീകരിക്കുന്നു.
കുറിപ്പ്:
0% പ്രതിഫലനം എന്നതിനർത്ഥം വസ്തു വളരെ ഇരുണ്ടതാണെന്നാണ്. സെൻസർ 3000 അല്ലെങ്കിൽ അതിൽ കൂടുതലുള്ള ഒരു അസംസ്കൃത മൂല്യം കാണുന്നു.
100% പ്രതിഫലനം എന്നാൽ വസ്തു വളരെ തിളക്കമുള്ളതാണെന്ന് അർത്ഥമാക്കുന്നു. സെൻസർ 0 എന്ന അസംസ്കൃത മൂല്യം കാണുന്നു.
Usage:
object_sensor.reflectivity()
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
ഈ രീതിക്ക് പാരാമീറ്ററുകൾ ഇല്ല. |
# Drive forward when the reflectivity is greater than 50%.
while True:
if object_sensor.reflectivity() > 50:
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
വസ്തുവിനെ_കണ്ടെത്തി#
is_object_detected എന്നത് ഒബ്ജക്റ്റ് സെൻസർ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നുണ്ടോ എന്ന് നൽകുന്നു.
True– ഒബ്ജക്റ്റ് സെൻസർ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നു.False– ഒബ്ജക്റ്റ് സെൻസർ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നില്ല.
Usage:
object_sensor.is_object_detected()
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
ഈ രീതിക്ക് പാരാമീറ്ററുകൾ ഇല്ല. |
# Drive forward when the object sensor is detecting an object.
while True:
if object_sensor.is_object_detected():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
സെറ്റ്_ത്രെഷോൾഡ്#
set_threshold ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നതിന് മുമ്പ് ആവശ്യമായ പ്രതിഫലിക്കുന്ന പ്രകാശത്തിന്റെ അളവ് ഒരു ശതമാനമായി സജ്ജമാക്കുന്നു.
Usage:
object_sensor.set_threshold(value)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
ഒരു വസ്തുവിനെ പൂർണ്ണ സംഖ്യയായി കണക്കാക്കാൻ ആവശ്യമായ പ്രതിഫലിക്കുന്ന പ്രകാശത്തിന്റെ അളവ്, പൂജ്യം മുതൽ 100 വരെ. |
# Set the reflectivity threshold to 50%.
object_sensor.set_threshold(50)
# Drive forward when the object sensor is detecting an object.
while True:
if object_sensor.is_object_detected():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
ഒബ്ജക്റ്റ്_ഡിറ്റക്റ്റഡ്#
object_detected എന്നത് ഒബ്ജക്റ്റ് സെൻസർ ഒരു പുതിയ ഒബ്ജക്റ്റ് കണ്ടെത്തുമ്പോഴെല്ലാം വിളിക്കേണ്ട ഒരു ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുന്നു.
Usage:
object_sensor.object_detected(callback, arg)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
ഒബ്ജക്റ്റ് സെൻസർ ഒരു പുതിയ വസ്തുവിനെ കണ്ടെത്തുമ്പോൾ നടപ്പിലാക്കുന്ന, മുമ്പ് നിർവചിച്ച ഒരു ഫംഗ്ഷൻ. |
|
ഓപ്ഷണൽ. കോൾബാക്ക് ഫംഗ്ഷനിലേക്ക് കൈമാറുന്നതിനുള്ള ആർഗ്യുമെന്റുകൾ അടങ്ങിയ ഒരു |
def my_function():
brain.screen.print("Object detected.")
# Call my_function whenever object_sensor detects an object
object_sensor.object_detected(my_function)
വസ്തു_നഷ്ടപ്പെട്ടു#
ഒബ്ജക്റ്റ് സെൻസർ കണ്ടെത്തിയ ഒരു ഒബ്ജക്റ്റ് നഷ്ടപ്പെടുത്തുമ്പോഴെല്ലാം വിളിക്കേണ്ട ഒരു ഫംഗ്ഷൻ object_lost രജിസ്റ്റർ ചെയ്യുന്നു.
Usage:
object_sensor.object_lost(callback, arg)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
ഒബ്ജക്റ്റ് സെൻസർ കണ്ടെത്തിയ ഒരു വസ്തു നഷ്ടപ്പെടുമ്പോൾ നടപ്പിലാക്കുന്ന, മുമ്പ് നിർവചിച്ച ഒരു ഫംഗ്ഷൻ. |
|
ഓപ്ഷണൽ. കോൾബാക്ക് ഫംഗ്ഷനിലേക്ക് കൈമാറുന്നതിനുള്ള ആർഗ്യുമെന്റുകൾ അടങ്ങിയ ഒരു |
def my_function():
brain.screen.print("Object lost.")
# Call my_function whenever object_sensor loses an object
object_sensor.object_lost(my_function)
മാറ്റി#
ഒബ്ജക്റ്റ് സെൻസറിന്റെ മൂല്യം മാറുമ്പോഴെല്ലാം വിളിക്കേണ്ട ഒരു ഫംഗ്ഷൻ changed രജിസ്റ്റർ ചെയ്യുന്നു.
Usage:
object_sensor.changed(callback, arg)
പാരാമീറ്ററുകൾ |
വിവരണം |
|---|---|
|
ഒബ്ജക്റ്റ് സെൻസറിന്റെ മൂല്യം മാറുമ്പോൾ നടപ്പിലാക്കുന്ന, മുമ്പ് നിർവചിച്ച ഒരു ഫംഗ്ഷൻ. |
|
ഓപ്ഷണൽ. കോൾബാക്ക് ഫംഗ്ഷനിലേക്ക് കൈമാറുന്നതിനുള്ള ആർഗ്യുമെന്റുകൾ അടങ്ങിയ ഒരു |
def my_function():
brain.screen.print("Reflectivity changed.")
# Call my_function whenever object_sensor's value changes
object_sensor.changed(my_function)
കൺസ്ട്രക്ടർമാർ#
ഒബ്ജക്റ്റ് സെൻസറുകൾ കോൺഫിഗർ ചെയ്യുന്നതിന് ആവശ്യമായ ObjectDetector ഒബ്ജക്റ്റുകൾ സ്വമേധയാ സൃഷ്ടിക്കാൻ കൺസ്ട്രക്റ്ററുകൾ ഉപയോഗിക്കുന്നു.
ObjectDetector#
ObjectDetector ഒരു ഒബ്ജക്റ്റ് സെൻസർ സൃഷ്ടിക്കുന്നു.
Usage:
ObjectDetector(port, reverse_det)
പാരാമീറ്റർ |
വിവരണം |
|---|---|
|
ഒബ്ജക്റ്റ് സെൻസർ ബന്ധിപ്പിച്ചിരിക്കുന്ന 3-വയർ പോർട്ട്:
|
|
ഓപ്ഷണൽ. ഡിറ്റക്ഷൻ ലോജിക് റിവേഴ്സ് ചെയ്യണോ വേണ്ടയോ എന്ന്:
|
# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)