বস্তু সেন্সর#

ভূমিকা#

অবজেক্ট সেন্সর দ্বারা প্রতিফলন ক্ষমতা পরিমাপ করতে এবং বস্তু শনাক্ত করতে objectdetector ক্লাসটি ব্যবহৃত হয়।

ক্লাস কনস্ট্রাক্টর#

objectdetector( 
  triport::port &port, 
  bool           bReverse = false );

ক্লাস ডেস্ট্রাক্টর#

objectdetector অবজেক্টটি ধ্বংস করে এবং সংশ্লিষ্ট রিসোর্সসমূহ মুক্ত করে।

virtual ~objectdetector();

প্যারামিটার#

প্যারামিটার

প্রকার

বর্ণনা

port

triport::port &

যে ৩-ওয়্যার পোর্টের সাথে অবজেক্ট সেন্সরটি সংযুক্ত থাকে, তা Brain.ThreeWirePort.X অথবা ExpanderName.Xহিসেবে লেখা হয়, যেখানে X হলো পোর্ট লেটার (উদাহরণস্বরূপ, Brain.ThreeWirePort.A অথবা Expander1.A)।

bReverse

bool

অবজেক্ট সেন্সরের দিক উল্টানোর জন্য একটি ঐচ্ছিক বুলিয়ান:

  • false (ডিফল্ট) — দিক উল্টাবেন না
  • true — দিক উল্টান

উদাহরণ#

// Create an objectdetector instance in Port A
objectdetector ObjectSensorA = objectdetector(Brain.ThreeWirePort.A, true);

সদস্যদের কার্যাবলী#

objectdetector ক্লাসে নিম্নলিখিত মেম্বার ফাংশনগুলো অন্তর্ভুক্ত রয়েছে:

  • reflectivity — অবজেক্ট সেন্সর দ্বারা শনাক্ত করা প্রতিফলন ক্ষমতা ফেরত দেয়।

  • isObjectDetected — অবজেক্ট সেন্সরটি কোনো বস্তু সনাক্ত করতে পারে কিনা তা ফেরত দেয়।

  • setDetectionThreshold — অবজেক্ট সেন্সরের সনাক্তকরণ পরিসীমা নির্ধারণ করে।

  • objectDetected — অবজেক্ট সেন্সর কোনো বস্তু শনাক্ত করলে যে ফাংশনটি কল করা হবে তা রেজিস্টার করে।

  • objectLost — অবজেক্ট সেন্সর কোনো বস্তু হারিয়ে ফেললে যে ফাংশনটি কল করা হবে তা রেজিস্টার করে।

যেকোনো objectdetector মেম্বার ফাংশন কল করার আগে, objectdetector ইনস্ট্যান্স অবশ্যই তৈরি করতে হবে, যেমনটি নিচে দেখানো হয়েছে:

// Create an objectdetector instance in Port A
objectdetector ObjectSensorA = objectdetector(Brain.ThreeWirePort.A, true);

reflectivity#

অবজেক্ট সেন্সর দ্বারা পরিমাপকৃত প্রতিফলনশীলতা ফেরত দেয়।

Available Functions
int32_t reflectivity( 
  percentUnits units = percentUnits::pct );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

units

percentUnits

প্রতিফলনশীলতার একক:

  • percent pct — শতাংশ

Return Values

অবজেক্ট ডিটেক্টর দ্বারা পরিমাপ করা প্রতিফলন ক্ষমতাকে ০ - ১০০% পরিসরের মধ্যে শতাংশ হিসাবে প্রকাশ করে একটি int32_t রিটার্ন করে।

Examples
// Display the detected reflectivity on the Brain's screen
int32_t value = ObjectSensorA.reflectivity();
Brain.Screen.print(value);

isObjectDetected#

অবজেক্ট ডিটেক্টর দ্বারা কোনো বস্তু বর্তমানে শনাক্ত করা হয়েছে কিনা তা ফেরত দেয়।

Available Functions
bool isObjectDetected();

Parameters

এই ফাংশনটি কোনো প্যারামিটার গ্রহণ করে না।

Return Values

কোনো অবজেক্ট শনাক্ত হয়েছে কিনা তা নির্দেশ করে একটি বুলিয়ান মান ফেরত দেয়:

  • true — An object is detected.
  • false — No object is detected.

setDetectionThreshold#

অবজেক্ট ডিটেক্টরের জন্য শনাক্তকরণ থ্রেশহোল্ড একটি নির্দিষ্ট মানে সেট করে।

Available Functions
void setDetectionThreshold( 
  int32_t      threshold, 
  percentUnits units = percentUnits::pct );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

threshold

int32_t

বস্তু শনাক্তকরণের জন্য প্রতিফলনশীলতার প্রান্তিক মান, যার পরিসীমা ০ - ১০০।

units

percentUnits

নতুন থ্রেশহোল্ডের একক:

  • percent pct — শতাংশ

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Examples
// Set the reflectivity threshold to 50%
ObjectSensorA.setDetectionThreshold(50);

objectDetected#

কোনো অবজেক্ট শনাক্ত হলে ব্যবহারের জন্য একটি কলব্যাক ফাংশন নিবন্ধন করে।

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

Parameters

প্যারামিটার

প্রকার

বর্ণনা

callback

void (*)(void)

কোনো অবজেক্ট শনাক্ত হলে যে কলব্যাক ফাংশনটি কল করা হবে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Examples

কলব্যাক ফাংশনটি সংজ্ঞায়িত করুন ( int main() এর বাইরে)

// Display a message when an object is detected.
void detected() {
  Brain.Screen.print("object detected");
}

int main() এর ভিতরে কলব্যাকটি নিবন্ধন করুন

int main() {
  // Run detected when the Object Detector detects an object.
  ObjectSensorA.objectDetected(detected);
}

objectLost#

কোনো অবজেক্ট হারিয়ে গেলে ব্যবহারের জন্য একটি কলব্যাক ফাংশন নিবন্ধন করে।

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

Parameters

প্যারামিটার

প্রকার

বর্ণনা

callback

void (*)(void)

কোনো অবজেক্ট হারিয়ে গেলে যে কলব্যাক ফাংশনটি কল করা হবে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Examples

কলব্যাক ফাংশনটি সংজ্ঞায়িত করুন ( int main() এর বাইরে)

// Display a message when an object is lost.
void lost() {
  Brain.Screen.print("object lost");
}

int main() এর ভিতরে কলব্যাকটি নিবন্ধন করুন

int main() {
  // Run lost when the Object Detector loses an object.
  ObjectSensorA.objectLost(lost);
}