Skip to main content

পাঠ ৪: অবজেক্ট সেন্সর কোডিং

গত পাঠে, আপনি অবজেক্ট সেন্সর সম্পর্কে শিখেছেন এবং ডিস্ক এবং কিউবের প্রতিফলনের শতাংশ সংগ্রহ করেছেন। এখন, আপনি VEXcode-এ একটি প্রকল্প তৈরি করতে এই মানগুলি ব্যবহার করবেন যাতে অবজেক্ট সেন্সর দ্বারা একটি ডিস্ক সনাক্ত হলে Exit Conveyor বন্ধ করা যায়।

এই পাঠে, আপনি:

  • VEXcode-এ অবজেক্ট সেন্সর কনফিগার করুন।
  • VEXcode-এ তুলনামূলক অপারেটর ব্যবহার করতে শিখুন।
  • অবজেক্ট সেন্সর থেকে ফিডব্যাক ব্যবহার করে এন্ট্রি কনভেয়র থেকে এক্সিট কনভেয়রে একটি ডিস্ক সরানোর জন্য একটি প্রকল্প তৈরি করুন।

এই পাঠের শেষে, আপনি পূর্ববর্তী পাঠ থেকে আপনার প্রকল্পের উপর ভিত্তি করে তৈরি করতে পারবেন যখন অবজেক্ট সেন্সর দ্বারা ডিস্ক সনাক্ত করা হয় তখন এক্সিট কনভেয়র বন্ধ করা।

এক্সিট কনভেয়রে এবং অবজেক্ট সেন্সরের নীচে সবুজ ডিস্ক।

প্রকল্প সম্পাদনা

অবজেক্ট সেন্সর সম্পর্কিত কমান্ড যোগ করার জন্য প্রস্তুতি নিতে আপনি ইউনিট ৪ পাঠ ২ কার্যকলাপ থেকে আপনার প্রকল্প সম্পাদনা করে শুরু করবেন।

VEXcode EXP-তে আপনারইউনিট 4 পাঠ 2 কার্যকলাপপ্রকল্পটি খুলুন, অথবা এখানে দেখানো প্রকল্পটি পুনরায় তৈরি করুন।

প্রকল্পের নাম পরিবর্তন করুনইউনিট 4 পাঠ 4.

ইউনিট ৪ পাঠ ২ প্রকল্প থেকে নেওয়া তিনটি ব্লক স্ট্যাক। প্রথম স্ট্যাকে লেখা আছে "শুরু হলে, এন্ট্রি কনভেয়র ১ ইনবাউন্ড স্পিন করুন, ৭ সেকেন্ড অপেক্ষা করুন, এবং তারপর এন্ট্রি কনভেয়র ১ বন্ধ করুন।" এরপর, ট্রান্সপোর্ট কনভেয়র 2 কে সামনের দিকে ঘুরান, 4 সেকেন্ড অপেক্ষা করুন, এবং তারপর ট্রান্সপোর্ট কনভেয়র 2 বন্ধ করুন। সবশেষে, এক্সিট কনভেয়র ৪ আউটবাউন্ড ঘুরিয়ে দিন, ২ সেকেন্ড অপেক্ষা করুন, এবং তারপর এক্সিট কনভেয়র ৪ বন্ধ করুন। পরবর্তী স্ট্যাকে লেখা আছে যখন সিগন্যাল টাওয়ার ৬ বাম্পার চাপা হবে, তখন আর্ম ১০ কে কন্ট্রোল স্টপ হিসেবে সেট করুন। শেষ প্রকল্পটিতে লেখা আছে যখন আর্ম ১০ কন্ট্রোল বন্ধ হয়ে যাবে, তখন সিগন্যাল টাওয়ার ৬ কে সবুজ এবং বন্ধ করে দিন এবং তারপর সিগন্যাল টাওয়ার ৬ কে লাল এবং জ্বলজ্বলে সেট করুন। সবশেষে, প্রবেশ পরিবাহক ১ বন্ধ করুন, পরিবহন পরিবাহক ২ বন্ধ করুন, এবং তারপর প্রস্থান পরিবাহক ৪ বন্ধ করুন।

VEXcode-এ অবজেক্ট সেন্সর কনফিগার করার জন্য ডিভাইস উইন্ডোটি খুলেএকটি ডিভাইস যোগ করুন" নির্বাচন করুন।

ডিভাইস উইন্ডো খোলা আছে এবং একটি ডিভাইস যোগ করুন বোতামটি হাইলাইট করা হয়েছে।

৩-তারের ডিভাইসের তালিকা খুলতে ৩-তারনির্বাচন করুন।

ডিভাইস উইন্ডোতে ডিভাইসের বিকল্পগুলি, যেখানে লাল রঙে 3 ওয়্যার আইকনটি ডাকা হবে।

তারপর,অবজেক্ট সেন্সর নির্বাচন করুন।

ডিভাইস উইন্ডোতে ৩টি ওয়্যার ডিভাইস অপশন, যেখানে অবজেক্ট সেন্সর আইকনটি লাল রঙে ডাকা হবে।

কনফিগারেশন সম্পূর্ণ করতে পোর্ট Aনির্বাচন করুন, তারপরDoneনির্বাচন করুন।

দ্রষ্টব্য:নিশ্চিত করুন যে অবজেক্ট সেন্সরটি মস্তিষ্কের পোর্ট A-তে প্লাগ ইন করা আছে।

অবজেক্ট সেন্সরের জন্য পোর্ট A হাইলাইট করা ডিভাইস উইন্ডো।

প্রকল্পের শেষ দুটি ব্লক সরান। এর মধ্যে রয়েছেওয়েটব্লক এবং এক্সিট কনভেয়রের জন্যস্টপব্লক, যেমনটি এই ভিডিওতে দেখানো হয়েছে।

ভিডিও ফাইল

প্রকল্পেযোগ করুনব্লক পর্যন্ত অপেক্ষা করুন।

Wait untilব্লক হল এমন একটি ব্লক যা স্ট্যাকের পরবর্তী ব্লকে যাওয়ার আগে একটি বুলিয়ান শর্ত সত্য হিসাবে রিপোর্ট করার জন্য অপেক্ষা করে।

একটি VEXcode EXP স্ট্যাকের শেষে একটি খালি ব্লক যোগ না হওয়া পর্যন্ত অপেক্ষা করুন। স্ট্যাকটি "শুরু হলে, এন্ট্রি কনভেয়র ১ ইনবাউন্ড স্পিন করুন, ৭ সেকেন্ড অপেক্ষা করুন, এবং তারপর এন্ট্রি কনভেয়র ১ বন্ধ করুন" বলে পড়ে। এরপর, ট্রান্সপোর্ট কনভেয়র 2 কে সামনের দিকে ঘুরান, 5 সেকেন্ড অপেক্ষা করুন, এবং তারপর ট্রান্সপোর্ট কনভেয়র 2 বন্ধ করুন। সবশেষে, এক্সিট কনভেয়র 4 আউটবাউন্ড স্পিন করুন এবং তারপর অপেক্ষা করুন।

তুলনা অপারেটর

এখন যেহেতুপ্রকল্পেব্লক যোগ না হওয়া পর্যন্ত অপেক্ষা করুন, ব্লক দ্বারা পরীক্ষা করা শর্তটি যোগ করা প্রয়োজন। 

পূর্বে, আপনি অবজেক্ট সেন্সর দ্বারা রিপোর্ট করা প্রতিফলন শতাংশ সম্পর্কে জেনেছিলেন এবং আপনার ইঞ্জিনিয়ারিং নোটবুকে সেই মানগুলি রেকর্ড করেছিলেন। এই প্রকল্পে, আপনাকেপর্যন্ত এক্সিট কনভেয়র চালাতে হবে যতক্ষণ নামানটি একটি নির্দিষ্ট থ্রেশহোল্ডএর উপরে থাকে। একটি থ্রেশহোল্ড হল এমন একটি জিনিস যা নির্ধারণ করতে ব্যবহৃত হয় যে কোনও মান উপরে, নীচে, নাকি গ্রহণযোগ্য সীমার মধ্যে। প্রতিফলন একটি নির্দিষ্ট মানের উপরে, নাকি সেই থ্রেশহোল্ডের উপরে তা পরীক্ষা করতে তুলনা অপারেটর ব্যবহার করা যেতে পারে।

এর ষড়ভুজাকার স্থানেএর চেয়ে বড় একটি ব্লক যোগ করুনব্লক পর্যন্ত অপেক্ষা করুন।

"ওয়াট আনটিল" ব্লকটি সবেমাত্র যোগ করা হয়েছে, যার একটি নতুন বুলিয়ান প্যারামিটার ৫০ এর চেয়ে বেশি।

Greater thanব্লকের প্রথম খোলা অংশে একটি Reflectiveityব্লক যোগ করুন।

এখন অপেক্ষা করুন ব্লকটি বৃহত্তর দ্যান ব্লকে একটি অবজেক্ট সেন্সর রিফ্লেক্টিভিটি ব্লক যুক্ত করে। পুরো ব্লকটি এখন একসাথে পড়ে আছে "অবজেক্ট সেন্সর পর্যন্ত অপেক্ষা করুন" %-এ প্রতিফলন ৫০-এর বেশি।

Greater thanব্লকটি প্রথম মানটিকে দ্বিতীয়টির সাথে তুলনা করে। প্রকল্পে বর্তমানে এর চেয়ে বড়ব্লকটি বুলিয়ানকেসত্যবামিথ্যাহিসাবে ঘোষণা করার আগে অবজেক্ট সেন্সর দ্বারা রিপোর্ট করা প্রতিফলন শতাংশের তুলনা '50' প্যারামিটারের সাথে করছে। 

অপেক্ষা করুন ব্লক, যার মান "বৃহত্তর" হাইলাইট করা আছে। পুরো ব্লকটি এখন একসাথে পড়ে আছে "অবজেক্ট সেন্সর পর্যন্ত অপেক্ষা করুন" %-এ প্রতিফলন ৫০-এর বেশি।

এই প্রকল্পের লক্ষ্যগুলি সম্পর্কে চিন্তা করুন। অবজেক্ট সেন্সর কোনও বস্তু সনাক্ত না করা পর্যন্ত এক্সিট কনভেয়রটিকে ঘুরতে হবে, তারপর কনভেয়রটিকে থামাতে হবে। পূর্ববর্তী পাঠে সংগৃহীত মানগুলি এইGreater thanব্লকের সাথে ব্যবহার করা যেতে পারে যাতে প্রকল্পটি স্ট্যাকের পরবর্তী ব্লকে যাওয়ার আগে যে থ্রেশহোল্ড অতিক্রম করতে হবে তা নির্ধারণ করা যায়।

Greater thanব্লকের দ্বিতীয় প্যারামিটারটি '9' তে পরিবর্তন করুন। 

এই সংখ্যাটি পূর্ববর্তী পাঠের কার্যকলাপে সংগৃহীত মানের উপর ভিত্তি করে। যখন সবুজ ডিস্কটি অবজেক্ট সেন্সরের অধীনে ছিল তখন প্রতিফলন 10% হিসাবে রিপোর্ট করা হয়েছিল, তাই9% এর চেয়ে বড় যেকোনো সত্যহিসাবে রিপোর্ট করা উচিত।

অপেক্ষা করুন ব্লকটি যার মান "বৃহত্তর" (Greater than) হাইলাইট করা হয়েছে এবং 50 থেকে 9 এ পরিবর্তন করা হয়েছে। পুরো ব্লকটি এখন একসাথে পড়ে আছে "অবজেক্ট সেন্সর পর্যন্ত অপেক্ষা করুন" %-এ প্রতিফলন 9-এর বেশি।

প্রকল্পের শেষে একটিস্টপব্লক যোগ করুন। নিশ্চিত করুন যে প্যারামিটারটি 'ExitConveyor4' তে সেট করা আছে।

VEXcode EXP স্ট্যাকের ধারাবাহিকতায় শেষে "Stop Motor" বোতাম যুক্ত করা হয়েছে যার শেষে লেখা আছে "Stop exit conveyor 4"। স্ট্যাকটি "শুরু হলে, এন্ট্রি কনভেয়র ১ ইনবাউন্ড স্পিন করুন, ৭ সেকেন্ড অপেক্ষা করুন, এবং তারপর এন্ট্রি কনভেয়র ১ বন্ধ করুন" বলে পড়ে। এরপর, ট্রান্সপোর্ট কনভেয়র 2 কে সামনের দিকে ঘুরান, 5 সেকেন্ড অপেক্ষা করুন, এবং তারপর ট্রান্সপোর্ট কনভেয়র 2 বন্ধ করুন। সবশেষে, এক্সিট কনভেয়র ৪ ইনবাউন্ড স্পিন করুন, অবজেক্ট সেন্সর A প্রতিফলন %-এর চেয়ে বেশি না হওয়া পর্যন্ত অপেক্ষা করুন, এবং তারপর এক্সিট কনভেয়র ৪ বন্ধ করুন।

নিশ্চিত করুন যে মস্তিষ্ক VEXcode এর সাথে সংযুক্ত আছে এবং প্রকল্পটি ডাউনলোড করুন।

VEXcode EXP টুলবার যেখানে Brain এবং Run আইকনের মাঝখানে একটি লাল বাক্সে "Download" আইকনটি লেখা আছে।

কোডটি পড়ুন এবং প্রকল্পটি চালানোর সময় কনভেয়ররা কী করবে তা অনুমান করুন। 

তোমার ভবিষ্যদ্বাণী তোমার ইঞ্জিনিয়ারিং নোটবুকে লিপিবদ্ধ করো।

VEXcode EXP স্ট্যাক যেখানে স্টপ মোটর ব্লকটি সবেমাত্র যোগ করা হয়েছে। পুরো স্ট্যাকটি "শুরু হলে, এন্ট্রি কনভেয়র ১ ইনবাউন্ড স্পিন করুন, ৭ সেকেন্ড অপেক্ষা করুন, এবং তারপর এন্ট্রি কনভেয়র ১ বন্ধ করুন।" এরপর, ট্রান্সপোর্ট কনভেয়র 2 কে সামনের দিকে ঘুরান, 5 সেকেন্ড অপেক্ষা করুন, এবং তারপর ট্রান্সপোর্ট কনভেয়র 2 বন্ধ করুন। সবশেষে, এক্সিট কনভেয়র ৪ আউটবাউন্ড স্পিন করুন, অবজেক্ট সেন্সর A প্রতিফলন % তে ৯ এর বেশি না হওয়া পর্যন্ত অপেক্ষা করুন, এবং তারপর এক্সিট কনভেয়র ৪ বন্ধ করুন।

নিশ্চিত করুন যে এন্ট্রি কনভেয়রে একটি সবুজ ডিস্ক স্থাপন করা হয়েছে। প্রকল্পটি পরীক্ষা করার জন্য ব্রেইন-এ চেক বোতাম টিপুন।

প্রকল্পটি চলাকালীন কনভেয়রগুলির আচরণ পর্যবেক্ষণ করুন।

ইউনিট ৪ পাঠ ৪ প্রকল্প শুরু করার জন্য লাল বাক্সে ডায়মন্ড চেক বোতামটি ডাকা হয়েছে, যার সাহায্যে EXP ব্রেন।

কনভেয়রগুলি সরানো শেষ হলে প্রকল্পটি বন্ধ করতে ব্রেনের X বোতাম টিপুন। তোমার পর্যবেক্ষণগুলো তোমার ইঞ্জিনিয়ারিং নোটবুকে লিপিবদ্ধ করো।

আপনার ভবিষ্যদ্বাণী অনুযায়ী কি কনভেয়ারগুলো সরে গেছে? সবুজ ডিস্কটি কি ইচ্ছাকৃতভাবে এক্সিট কনভেয়রে স্থানান্তরিত হয়েছিল? কেন অথবা কেন নয়?

EXP ব্রেন, যার ডায়মন্ড X বোতামটি ছিল, একটি লাল বাক্সে প্রকল্পটি শেষ করার জন্য ডাকছিল।

প্রকল্প পর্যালোচনা

আসুন এই প্রকল্পের সেই প্রকল্প প্রবাহ পর্যালোচনা করি যা অবজেক্ট সেন্সর দ্বারা সবুজ ডিস্ক সনাক্ত করার সময় প্রস্থান কনভেয়র বন্ধ করে দিয়েছিল। অপেক্ষা করুনব্লক প্রকল্পটিকে এগিয়ে যেতে বাধা দেয় যতক্ষণ না এর মধ্যে থাকা শর্তটি সত্য হিসাবে রিপোর্ট করা হয়। 

VEXcode EXP প্রকল্পে যুক্তির প্রবাহকে কল্পনা করে এমন চিত্র। একটি তীরচিহ্ন ব্লক শুরু না হওয়া পর্যন্ত অপেক্ষা করুন নির্দেশ করে, এবং তারপর একটি চক্রাকার তীরচিহ্ন নির্দেশ করে যে ব্লকটি তার অবস্থা সত্য না হওয়া পর্যন্ত অপেক্ষা করে। শুধুমাত্র যখন বস্তু সেন্সর A এর প্রতিফলন % এর চেয়ে বেশি হবে তখনই পরবর্তী ব্লকটি চলবে।

যেহেতুস্পিনব্লকটি একটি নন-ওয়েটিং ব্লক, এটি CTE ওয়ার্কসেলকে অবজেক্ট সেন্সর থেকে মান এবং প্রতিফলনের অবস্থা 9% এর বেশি কিনা তা পরীক্ষা করার সময় কনভেয়র মোটরটি ঘুরিয়ে রাখতে দেয়। এর অবস্থা প্রকাশের পর,ব্লকTRUE হিসাবে রিপোর্ট না হওয়া পর্যন্ত অপেক্ষা করুন, প্রকল্পটি স্ট্যাকের পরবর্তী ব্লকে চলে যায়, এক্সিট কনভেয়র মোটর বন্ধ করে।

আপনার জ্ঞাতার্থে

যখন কোনও বস্তু অবজেক্ট সেন্সরের অধীনে থাকে তখন প্রজেক্টে এক্সিট কনভেয়র বন্ধ করার জন্য ব্লকের আরেকটি সংমিশ্রণ ব্যবহার করা যেতে পারে। সেট ডিটেকশন থ্রেশহোল্ডব্লকটি একটি প্রকল্পের শুরুতে থ্রেশহোল্ড সেট করার জন্য ব্যবহার করা যেতে পারে, ঠিক যেমনটি উপরে নির্মিত প্রকল্পেগ্রেটার দ্যানব্লকটি করেছিল। 

VEXcode EXP সেট ডিটেকশন থ্রেশহোল্ড ব্লক যাতে লেখা আছে 'অবজেক্ট সেন্সর A ডিটেকশন থ্রেশহোল্ড 50% এ সেট করুন।

একবার থ্রেশহোল্ড সেট হয়ে গেলে, বুলিয়ানডিটেক্টস অবজেক্টব্লকটি ষড়ভুজাকার স্থান সহ যেকোনো ব্লকে ব্যবহার করা যেতে পারে। এই ব্লকটি TRUE রিপোর্ট করবে যখনদ্বারা সংজ্ঞায়িত সনাক্তকরণ থ্রেশহোল্ড সেট করুন সনাক্তকরণ থ্রেশহোল্ডব্লক পূরণ হবে, অথবা যখন প্রতিফলন শতাংশ সেই থ্রেশহোল্ডের নিচে থাকবে তখন FALSE রিপোর্ট করবে।

VEXcode EXP অবজেক্ট ব্লক সনাক্ত করে যেখানে লেখা আছে 'অবজেক্ট সেন্সর A অবজেক্ট সনাক্ত করে?'।

যেহেতুDetectsobjectব্লকটি একটি বুলিয়ান ব্লক, এটি সরাসরিWait untilব্লকের সাথে ফিট করতে পারে।

VEXcode EXP স্ট্যাকের বিকল্প সংস্করণ, Wait Until বুলিয়ান ব্লক সহ একটি Detection Threshold সিস্টেমে পরিবর্তিত হয়েছে। পুরো স্ট্যাকটি এখন পড়ছে। শুরু হলে, অবজেক্ট সেন্সর A সনাক্তকরণ থ্রেশহোল্ড 9% এ সেট করুন। এরপর, এন্ট্রি কনভেয়র ১ ইনবাউন্ড ঘুরিয়ে ৭ সেকেন্ড অপেক্ষা করুন, এবং তারপর এন্ট্রি কনভেয়র ১ বন্ধ করুন। এরপর, ট্রান্সপোর্ট কনভেয়র 2 কে সামনের দিকে ঘুরান, 5 সেকেন্ড অপেক্ষা করুন, এবং তারপর ট্রান্সপোর্ট কনভেয়র 2 বন্ধ করুন। এরপর, এক্সিট কনভেয়র ৪ ইনবাউন্ড স্পিন করুন, অবজেক্ট সেন্সর A অবজেক্ট সনাক্ত না করা পর্যন্ত অপেক্ষা করুন, এবং তারপর এক্সিট কনভেয়র ৪ বন্ধ করুন।

তোমার বোধগম্যতা পরীক্ষা করো

পরবর্তী পাঠে যাওয়ার আগে, আপনার ইঞ্জিনিয়ারিং নোটবুকে নিম্নলিখিত প্রশ্নগুলির উত্তর দিয়ে নিশ্চিত করুন যে আপনি এই পাঠের ধারণাগুলি বুঝতে পেরেছেন।

আপনার বোঝার প্রশ্নগুলি পরীক্ষা করুন > (Google Doc / .docx / .pdf)


পুটিং ইট অল টুগেদার অ্যাক্টিভিটিতে যেতে পরবর্তী > নির্বাচন করুন।