مستشعر الجسم#
مقدمة#
مستشعر الأجسام هو مستشعر تقارب يعمل بالأشعة تحت الحمراء (IR) ويكتشف متى يكون الجسم قريبًا باستخدام ضوء الأشعة تحت الحمراء المنعكس.

تستخدم هذه الصفحة الاسم object_sensor كمثال لاسم مستشعر الكائن. استبدله بالاسم الذي قمت بتكوينه حسب الحاجة.
فيما يلي قائمة بالطرق المتاحة:
reflectivity– تُرجعintegerيمثل كمية الضوء المنعكس من الجسم كنسبة مئوية.is_object_detected– تُرجع ما إذا كان مستشعر الكائن يكتشف كائنًا أم لا.set_threshold– يحدد مقدار الضوء المنعكس المطلوب قبل اعتبار الجسم قابلاً للكشف.object_detected– يسجل دالة ليتم استدعاؤها كلما اكتشف مستشعر الكائن كائنًا جديدًا.object_lost– يسجل دالة يتم استدعاؤها كلما فقد مستشعر الكائن كائنًا تم اكتشافه.changed– يسجل دالة ليتم استدعاؤها كلما تغيرت قيمة مستشعر الكائن.
المنشئ – تهيئة مستشعر الكائن يدويًا.
ObjectDetector– إنشاء مستشعر كائن.
الانعكاسية#
reflectivity تُرجع integer التي تمثل كمية الضوء المنعكس من الجسم كنسبة مئوية.
ملحوظة:
نسبة الانعكاس 0% تعني أن الجسم شديد الظلام.
نسبة الانعكاس 100% تعني أن الجسم شديد السطوع.
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)
حدود |
وصف |
|---|---|
|
قيمة الانعكاسية المطلوبة قبل اعتبار الجسم قابلاً للكشف، من 0 إلى 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)
حدود |
وصف |
|---|---|
|
A previously defined function that executes when the Object Sensor detects a new object. |
|
اختياري. مجموعة |
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)
حدود |
وصف |
|---|---|
|
A previously defined function that executes when the Object Sensor loses a detected object. |
|
اختياري. مجموعة |
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)
حدود |
وصف |
|---|---|
|
A previously defined function that executes when the Object Sensor’s value changes. |
|
اختياري. مجموعة |
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)
المعلمة |
وصف |
|---|---|
|
منفذ الأسلاك الثلاثة الذي يتصل به مستشعر الجسم:
|
|
اختياري. ما إذا كان سيتم عكس منطق الكشف:
|
# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)