IQ (2nd gen) সেন্সর সমস্যা সমাধান করা

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

এই প্রক্রিয়ার ধাপগুলি হল:

  1. সমস্যা চিহ্নিত করুন
  2. হার্ডওয়্যার পরীক্ষা করুন
  3. সফটওয়্যার চেক করুন
  4. ডেটা বিশ্লেষণ এবং প্রয়োগ করুন

সমস্যা চিহ্নিত করুন

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

VEX IQ (2nd gen) সেন্সর:

একবার আপনি সনাক্ত করেছেন যে কোন সেন্সরটি অনাকাঙ্ক্ষিত আচরণের কারণ হচ্ছে, আপনি প্রক্রিয়াটিতে এগিয়ে যেতে পারেন।


হার্ডওয়্যার পরীক্ষা করুন

দ্বিতীয় ধাপ হল রোবটের হার্ডওয়্যার পরীক্ষা করা যাতে সেন্সরটি ইচ্ছামত কাজ করতে পারে। নিম্নলিখিত হার্ডওয়্যার বিবেচনার প্রতিটি আপনার সেন্সর কার্যকারিতা প্রভাবিত হতে পারে.

সেন্সর বসানো চেক করুন

pasted_image_0__1_.png

আপনার রোবটে সেন্সরটি কোথায় অবস্থিত তা দেখে শুরু করুন। সেন্সর কি আপনার রোবটের অন্য অংশের মতো কিছু দ্বারা অবরুদ্ধ হচ্ছে? নিশ্চিত করুন যে সেন্সরের উদ্দেশ্য অনুযায়ী কাজ করার জন্য প্রয়োজনীয় স্থান রয়েছে।

এখানে দেখানো হয়েছে, অপটিক্যাল সেন্সরের কাছে একটি স্পষ্ট দৃষ্টিভঙ্গি রয়েছে যে বস্তুটি এটি সনাক্ত করার জন্য।

সেন্সর সংযোগ পরীক্ষা করুন

touchled.png

VEX IQ (2nd gen) মস্তিষ্কের ডিভাইস স্ক্রিনে রিপোর্ট করা ডেটা দেখে সেন্সরের কার্যকারিতা পরীক্ষা করুন। এটি আপনাকে সেন্সরটি প্লাগ ইন এবং কাজ করছে তা যাচাই করতে সহায়তা করতে পারে।

ডিভাইস স্ক্রীন অ্যাক্সেস করতে, এই নিবন্ধের ধাপগুলি অনুসরণ করুন।

pasted_image_0.png

একবার ডিভাইস স্ক্রিন খোলা হলে, সেন্সর ডেটা রিপোর্ট করছে কিনা তা দেখুন।

যদি না হয়, নিশ্চিত করুন আপনার সেন্সর সঠিকভাবে প্লাগ ইন করা আছে। সেন্সর প্লাগ ইন করার সময়, যখন সেন্সরের লকিং ট্যাবটি একটি পোর্টে সম্পূর্ণরূপে নিযুক্ত থাকে তখন আপনার একটি স্ন্যাপ শুনতে হবে৷

আপনি যে সেন্সরটি ব্যবহার করছেন সেটি অন্যের সাথে অদলবদল করে দেখতে পারেন যে এটি আপনার সমস্যার সমাধান করে কিনা।

আপনি যদি আপনার সেন্সর বসানো বা সেন্সর সংযোগের সাথে কিছু পরিবর্তন করেন, তাহলে আপনার প্রকল্পটি আবার পরীক্ষা করে দেখুন যে এটি সমস্যার সমাধান করেছে কিনা। আপনার সেন্সর স্থাপন এবং সংযোগ পরিবর্তন না হলে, সমস্যা সমাধান প্রক্রিয়া চালিয়ে যেতে পরবর্তী ধাপে যান।


সফটওয়্যার চেক করুন

একবার আপনি শনাক্ত করেছেন যে সেন্সরটি স্থাপন করা হয়েছে এবং সফলভাবে রোবটের সাথে সংযুক্ত হয়েছে, আপনি পরবর্তী VEXcode IQ প্রকল্পটি দেখতে পারেন। একটি প্রকল্পে পুনরাবৃত্তি করা আপনাকে নিশ্চিত করতে সাহায্য করতে পারে যে সেন্সর থেকে ডেটা আপনার প্রকল্পে কার্যকরভাবে ব্যবহার করা হচ্ছে। নিম্নলিখিত কৌশলগুলি আপনাকে আপনার সেন্সর কোডিং করতে সাহায্য করতে পারে।

আপনি যদি আপনার VEXcode IQ প্রকল্পে এই কৌশলগুলির যেকোনো একটি প্রয়োগ করেন, তাহলে এটি সমস্যার সমাধান করেছে কিনা তা দেখতে আপনার প্রকল্পটি আবার পরীক্ষা করুন।

ফার্মওয়্যার এবং কনফিগারেশন পরীক্ষা করুন

Screen_Shot_2023-04-05_at_3.38.05_PM.png

এখন আপনি নিশ্চিত যে সমস্ত ডিভাইস সঠিকভাবে মস্তিষ্কের সাথে সংযুক্ত, VEXcode IQ-এ ডিভাইস কনফিগারেশন পরীক্ষা করুন।

কনফিগারেশনে সমস্ত সেন্সর উপস্থিত রয়েছে তা নিশ্চিত করতে পরীক্ষা করুন। তারপরে, প্রতিটি সঠিক পোর্টের সাথে সংযুক্ত কিনা তা নিশ্চিত করতে পরীক্ষা করুন।

কোনো ভুল ডিভাইস কনফিগারেশন পরিবর্তন করুন.

একটি উদাহরণ প্রকল্প চালান

image2.png

একটি উদাহরণ প্রজেক্ট খুলুন যেটি সেন্সর ব্যবহার করে আপনি সমস্যা সমাধান করছেন। উদাহরণ প্রকল্পগুলি ফিল্টার করতে আপনি 'সেন্সিং' বিভাগ নির্বাচন করতে পারেন।

IQ ব্লক উদাহরণ প্রকল্প এবং টেমপ্লেট সম্পর্কে আরও তথ্যের জন্য, এই নিবন্ধটি দেখুন

আইকিউ পাইথন উদাহরণ প্রকল্প এবং টেমপ্লেট সম্পর্কে আরও তথ্যের জন্য, এই নিবন্ধটিদেখুন।

IQ C++ উদাহরণ প্রকল্প এবং টেমপ্লেট সম্পর্কে আরও তথ্যের জন্য, এই নিবন্ধটিদেখুন।

image7.png

একবার খোলার পরে, উদাহরণ প্রকল্পের কার্যকারিতা আপনি সেন্সরের সাথে যা করার চেষ্টা করছেন তার সাথে সারিবদ্ধ কিনা তা নির্ধারণ করতে নোটটি পড়ুন।

এখানে দেখানো উদাহরণ প্রকল্পে, নোটটি নির্দেশ করে যে দূরত্ব সেন্সর একটি বস্তু সনাক্ত করতে ব্যবহার করা হচ্ছে যাতে রোবটটি অবজেক্টে পৌঁছানোর পরে গাড়ি চালানো বন্ধ করতে পারে।

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

উদাহরণ প্রকল্প থেকে আপনি যা শিখেছেন তা আপনার টাস্কে প্রয়োগ করার জন্য আপনি নিজের সরলীকৃত প্রকল্প তৈরি করার চেষ্টা করতে পারেন।

অন্যান্য VEXcode IQ টুল ব্যবহার করুন

আপনি VEXcode IQ-তে আপনার সেন্সর কোডিং সম্পর্কে আরও জানতে সাহায্য করার জন্য এমন সরঞ্জাম এবং কৌশলগুলিও ব্যবহার করতে পারেন। আপনি সাহায্য ব্যবহার করে পৃথকভাবে টুলবক্সে ব্লক বা কমান্ড সম্পর্কে জানতে পারেন। সেন্সর কী রিপোর্ট করছে সে সম্পর্কে আরও জানতে একটি প্রকল্প চলমান থাকায় আপনি সেন্সর ডেটা দেখতে পারেন।

স্ক্রিনশট_2023-04-19_at_2.21.05_PM.png

সাহায্য

উদাহরণ প্রকল্পে ব্লক বা কমান্ডের জন্য সাহায্য পড়ুন, বা আপনার প্রকল্পে ব্যবহৃত ডেটা সম্পর্কে জানতে, কমান্ডটি কী মান রিপোর্ট করবে এবং একটি প্রকল্পে কমান্ডটি কীভাবে ব্যবহার করতে হয় তার উদাহরণগুলি পড়ুন।

VEXcode IQ ব্লকে সহায়তা অ্যাক্সেস করার বিষয়ে আরও জানতে এই নিবন্ধটি দেখুন।

VEXcode IQ পাইথনে সহায়তা অ্যাক্সেস করার বিষয়ে আরও জানতে এই নিবন্ধটি দেখুন।

VEXcode IQ C++-এ সহায়তা অ্যাক্সেস করার বিষয়ে আরও জানতে এই নিবন্ধটি দেখুন।

প্রিন্টিং ডেটা

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

নোট করুন যে একটি ব্লক প্রকল্পে, একটি পৃথক {When started} হ্যাট ব্লক ব্যবহার করা যেতে পারে সমস্ত মুদ্রণ কমান্ডগুলিকে তাদের নিজস্ব স্ট্যাকে সংগঠিত রাখতে।

VEXcode IQ ব্লক
ব্রেইনে প্রিন্ট করুন
VEXcode IQ পাইথন
যখন (সত্য):
brain.screen.set_font(FontType.MONO40)
brain.screen.print(brain_inertial.orientation(ROLL, DEGREES))
brain.screen.next_row()
অপেক্ষা (0.1, SECONDS)
VEXcode IQ C++
int main() 
{
while(true)
{
Brain.Screen.setFont(mono40);
Brain.Screen.print(BrainInertial.orientation(roll, ডিগ্রি));
Brain.Screen.newLine();
অপেক্ষা (0.1, সেকেন্ড);
} }

IQ Brain -এ মুদ্রণ করা সহায়ক যখন আপনি একটি VEXcode IQ প্রজেক্ট চলাকালীন মান পরিবর্তন করতে চান। এটি আপনাকে সেন্সর থেকে রিপোর্ট করা মানগুলি নির্ধারণ করতে সহায়তা করতে পারে যা আপনার প্রকল্পে পরামিতি হিসাবে ব্যবহার করতে হবে। এই প্রিন্ট কমান্ডগুলি আপনার ইতিমধ্যে তৈরি করা VEXcode IQ প্রকল্পে তৈরি করা যেতে পারে যাতে আপনি রোবট চলাকালীন নির্দিষ্ট সময়ে সেন্সরের মান পরিবর্তন দেখতে পারেন। 

উপরের এই উদাহরণ প্রকল্পগুলি দেখায় কিভাবে ইনর্শিয়াল সেন্সর থেকে আইকিউ ব্রেইনে মান প্রিন্ট করা যায়। প্রতিটি প্রকল্পের মন্তব্যগুলি প্রকল্পের প্রবাহ এবং প্রতিটি কমান্ডের ব্যবহার ব্যাখ্যা করে।

VEXcode IQ ব্লক VEXcode IQ পাইথন

মুদ্রণ দূরত্ব.png

যখন (সত্য):
মুদ্রণ(দূরত্ব_7. বস্তু_দূরত্ব(MM))
অপেক্ষা (0.1, সেকেন্ড)
VEXcode IQ C++
int main() 
{
while (true)
{
printf(Distance7.objectDistance(mm));
printf("\n");
অপেক্ষা (0.1, সেকেন্ড);
} }

যখন আপনি একটি VEXcode IQ প্রকল্প চালাচ্ছেন যেখানে রোবট নড়াচড়া করে না তখন VEXcode IQ-তে প্রিন্ট কনসোল এ প্রিন্ট করার পরামর্শ দেওয়া হয়। প্রিন্ট কনসোলে প্রিন্ট করার জন্য প্রজেক্টটি সম্পাদনের সময় আইকিউ ব্রেইন অবশ্যই প্লাগ ইন থাকতে হবে। এটি উপকারী কারণ আপনি মস্তিষ্কের পর্দা থেকে ডেটা পড়ার চেষ্টা করার পরিবর্তে VEXcode IQ উইন্ডো থেকে মানগুলি পড়তে পারেন।

এই উদাহরণগুলি VEXcode IQ-তে দূরত্ব সেন্সর (2nd gen) থেকে কনসোলে একটি প্রকল্প মুদ্রণ ডেটা দেখায়। 

VEXcode IQ ব্লকে প্রিন্ট কনসোল ব্যবহার করার বিষয়ে আরও তথ্যের জন্য, এই নিবন্ধটি দেখুন।

VEXcode IQ পাইথনে প্রিন্ট কনসোল ব্যবহার করার বিষয়ে আরও তথ্যের জন্য, এই নিবন্ধটি দেখুন।


ডেটা বিশ্লেষণ এবং প্রয়োগ করুন

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

আপনি এগিয়ে যেতে সাহায্য করার জন্য আপনার প্রকল্প সম্পর্কে প্রশ্ন জিজ্ঞাসা করতে পারেন। বিষয়গুলি সম্পর্কে চিন্তা করুন যেমন:

  • আপনি কি আপনার প্রকল্পে < এর বেশি বা > এর কম ব্যবহার করছেন? প্রতীকটি কি সঠিক দিকের দিকে মুখ করছে? আপনি যদি ইকুয়াল to = ব্যবহার করেন তাহলে মানগুলির একটি পরিসর ব্যবহার করতে এর চেয়ে বড় বা তার চেয়ে কম দিয়ে প্রতিস্থাপন করার চেষ্টা করুন।
  • আপনার পরামিতি সঠিক? আপনি কি আপনার প্যারামিটার সেট করতে সেন্সর থেকে ডেটা ব্যবহার করছেন? আপনি কি আপনার প্রয়োজনীয় ড্রপডাউন বিকল্পটি বেছে নিয়েছেন?
  • আপনি কি একাধিকবার শর্তগুলি পরীক্ষা করছেন? আপনার প্রজেক্টে একটি ফরএভার লুপ যোগ করার চেষ্টা করুন, যাতে প্রজেক্ট চালানোর সময় শর্তটি বারবার চেক করা হয়।
  • আপনার প্রকল্প আটকে যাচ্ছে? আপনার শর্ত সঠিকভাবে সেট করা আছে? আপনি যদি নেস্টেড লুপগুলি ব্যবহার করেন তবে পৃথক আচরণগুলিকে বিচ্ছিন্ন করতে আপনার প্রকল্পটিকে সরল করার চেষ্টা করুন।
  • আপনার পরিবেশগত অবস্থা কি সেন্সরকে প্রভাবিত করছে? এটা কি খুব উজ্জ্বল নাকি খুব অন্ধকার? উপায়ে বস্তু বা মানুষ আছে? এটি সাহায্য করে কিনা তা দেখতে একটি ভিন্ন অবস্থানে আপনার প্রকল্প চালানোর চেষ্টা করুন।
  • আপনি কি আপনার প্রকল্পের সাম্প্রতিকতম সংস্করণ চালাচ্ছেন? আপনি কি আপনার আপডেট করা প্রকল্পটি ব্রেইনে ডাউনলোড করেছেন? আপনি প্রতিবার পরিবর্তন করার সময় প্রকল্পটি পুনরায় ডাউনলোড করেছেন তা নিশ্চিত করুন।
  • আপনি কি সঠিক রঙ সনাক্ত করছেন? সেন্সর কি আপনার প্রজেক্টে থাকা রঙের চেয়ে ভিন্ন রঙের রিপোর্ট করছে? রঙের প্যারামিটার পরিবর্তন করার চেষ্টা করুন, বা রঙের মানগুলির একটি পরিসীমা ব্যবহার করে দেখুন, এটি সাহায্য করে কিনা।
  • আপনি কি সেন্সরের দৃশ্যের ক্ষেত্রের মধ্যে একটি বস্তু সনাক্ত করছেন? মনে রাখবেন যে দৃশ্যের ক্ষেত্রটি রোবটের গতিবিধির সাথে একত্রে চলে।
  • আপনি একটি শর্ত পরীক্ষা করার সময় একটি অপেক্ষা ব্লক ব্যবহার করছেন? একটি শর্ত পরীক্ষা করার সময় একটি প্রকল্পে অ-ওয়েটিং ব্লক ব্যবহার করতে ভুলবেন না। VEXcode IQ-তে অপেক্ষা বনাম নন-ওয়েটিং ব্লক সম্পর্কে আরও জানতে এই নিবন্ধটি দেখুন।
  • আপনি যদি ব্লকে কোডিং করেন, আপনার পুরো স্ট্যাকটি কি {When started} হ্যাট ব্লকের সাথে সংযুক্ত আছে? ব্লক শুধুমাত্র তখনই চলবে যখন তারা সংযুক্ত থাকবে। আপনি যখন ব্লকগুলি টেনে আনেন এবং সেগুলিকে একত্রে সংযুক্ত করেন তখন আপনি একটি ক্লিকের শব্দ শুনতে পারেন৷

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

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: