সুচিপত্র:

ইনফ্রারেড ডিটেক্টর সহ বো-বট: 12 টি ধাপ (ছবি সহ)
ইনফ্রারেড ডিটেক্টর সহ বো-বট: 12 টি ধাপ (ছবি সহ)

ভিডিও: ইনফ্রারেড ডিটেক্টর সহ বো-বট: 12 টি ধাপ (ছবি সহ)

ভিডিও: ইনফ্রারেড ডিটেক্টর সহ বো-বট: 12 টি ধাপ (ছবি সহ)
ভিডিও: GST Uncooled Infrared Detectors & Thermal Modules 2024, নভেম্বর
Anonim
ইনফ্রারেড ডিটেক্টর সহ বো-বট
ইনফ্রারেড ডিটেক্টর সহ বো-বট

এই নির্দেশনা দেখাবে কিভাবে একটি বো-বট তৈরি এবং কোড করতে হয় যা বাধা এড়াতে ইনফ্রারেড ডিটেক্টর ব্যবহার করে একটি গোলকধাঁধা নেভিগেট করতে পারে। এটি একটি সহজ নির্দেশিকা অনুসরণ করা যা আপনার প্রয়োজন অনুসারে সহজ পরিবর্তন করার অনুমতি দেয়। এর জন্য সার্কিট্রি এবং প্রোগ্রামিং সম্পর্কে প্রাথমিক ধারণা প্রয়োজন। এই প্রকল্পের জন্য আপনার বেসিক স্ট্যাম্প আইডিই সফটওয়্যার থাকতে হবে। এখানে ডাউনলোডের জন্য বিনামূল্যে। পাশাপাশি বো-বট রোবট

ধাপ 1: সম্পদ

বৈদ্যুতিক যন্ত্রপাতি

কানেক্টর ক্যাবল প্যারাল্যাক্স স্টোর সহ বো -বট - বোবট কিট

5 ইনফ্রারেড এলইডি এর প্যারাল্যাক্স স্টোর - আইআর ট্রান্সমিটার অ্যাসেম্বলি কিট

5 ইনফ্রারেড elাল সমাবেশ

5 ইনফ্রারেড ডিটেক্টর লম্বন দোকান - BoeBot IR রিসিভার

প্রতিরোধক

  • (2) 4.7 kΩ ABRA ইলেকট্রনিক্স - 4.7 kΩ
  • (5) 220 Ω ABRA ইলেকট্রনিক্স - 220
  • (2) 1 kΩ ABRA ইলেকট্রনিক্স - 1 kΩ
  • (5) 2 k ABRA ইলেকট্রনিক্স - 2 kΩ

মিশ্র তারের ABRA ইলেকট্রনিক্স - 22 গেজ তারের

3 LED এর ABRA Electronics - 5mm Red LED

সমর্থন

কম্পিউটার

বেসিক স্ট্যাম্প সম্পাদক - (ফ্রিওয়্যার)

সরঞ্জাম

ওয়্যার কাটার ABRA ইলেকট্রনিক্স - ওয়্যার কাটার (চ্ছিক)

ওয়্যার স্ট্রিপার ABRA ইলেকট্রনিক্স - ওয়্যার স্ট্রিপার

বিবিধ

দেয়াল (গোলকধাঁধা তৈরি করতে)

পদক্ষেপ 2: ইনফ্রারেড সনাক্তকরণ কীভাবে কাজ করে তা বোঝা (ptionচ্ছিক)

ইনফ্রারেড সনাক্তকরণ কীভাবে কাজ করে তা বোঝা (alচ্ছিক)
ইনফ্রারেড সনাক্তকরণ কীভাবে কাজ করে তা বোঝা (alচ্ছিক)

ইনফ্রারেড হেডলাইট

ইনফ্রারেড অবজেক্ট ডিটেকশন সিস্টেম যা আমরা বো-বট-এ তৈরি করব তা অনেক ক্ষেত্রে গাড়ির হেডলাইটের মতো। যখন একটি গাড়ির হেডলাইট থেকে আলো প্রতিবন্ধকতা প্রতিফলিত করে, আপনার চোখ বাধাগুলি সনাক্ত করে এবং আপনার মস্তিষ্ক সেগুলি প্রক্রিয়া করে এবং আপনার শরীরকে সেই অনুযায়ী গাড়ির পথ দেখায়। হেডলাইটের জন্য বো-বট ইনফ্রারেড এলইডি ব্যবহার করবে। তারা ইনফ্রারেড নির্গত করে, এবং কিছু ক্ষেত্রে, ইনফ্রারেড বস্তুর প্রতিফলন ঘটায় এবং বো-বটের দিকে ফিরে আসে। বো-বটের চোখ ইনফ্রারেড ডিটেক্টর। ইনফ্রারেড ডিটেক্টর সিগন্যাল পাঠায় যে তারা কোন বস্তুর প্রতিফলিত ইনফ্রারেড সনাক্ত করে কিনা তা নির্দেশ করে। বোয়-বটের মস্তিষ্ক, বেসিক স্ট্যাম্প, এই সেন্সর ইনপুটের উপর ভিত্তি করে সিদ্ধান্ত নেয় এবং সার্ভো মোটর পরিচালনা করে। চিত্র -1-১ আইআর হেডলাইট দিয়ে বস্তু সনাক্তকরণ আইআর ডিটেক্টরগুলিতে অন্তর্নির্মিত অপটিক্যাল ফিল্টার রয়েছে যা little০ এনএম ইনফ্রারেড ছাড়া খুব কম আলোর অনুমতি দেয় যা আমরা তার অভ্যন্তরীণ ফটোডিওড সেন্সর দিয়ে সনাক্ত করতে চাই। ইনফ্রারেড ডিটেক্টরের একটি ইলেকট্রনিক ফিল্টারও রয়েছে যা কেবলমাত্র.5.৫ কিলোহার্টজ সিগন্যাল দিয়ে যেতে পারে। অন্য কথায়, ডিটেক্টর কেবল ইনফ্রারেড খুঁজছে যা প্রতি সেকেন্ডে 38, 500 বার জ্বলছে। এটি সাধারণ উৎস যেমন সূর্যালোক এবং অন্দর আলো থেকে IR- এর হস্তক্ষেপ রোধ করে। সূর্যের আলো ডিসি হস্তক্ষেপ (0 Hz), এবং অভ্যন্তরীণ আলো 100 বা 120 Hz এ ফ্ল্যাশ এবং অফ করে, এই অঞ্চলের প্রধান শক্তি উৎসের উপর নির্ভর করে। যেহেতু 120 Hz ইলেকট্রনিক ফিল্টারের 38.5 kHz ব্যান্ড পাস ফ্রিকোয়েন্সি এর বাইরে, তাই এটি IR ডিটেক্টর দ্বারা সম্পূর্ণ উপেক্ষা করা হয়।

-প্যারালাক্স স্টুডেন্ট গাইড

ধাপ 3: IR LED গুলি একত্রিত করা

আইআর এলইডি একত্রিত করা
আইআর এলইডি একত্রিত করা

কেসিং এর বড় অংশে IR LED োকান

LED এর পরিষ্কার অংশ কেসিং এর ছোট অংশের সাথে আবদ্ধ করুন

ধাপ 4: ইনফ্রারেড জোড়া পরীক্ষা - সার্কিট

পরীক্ষা ইনফ্রারেড জোড়া - সার্কিট
পরীক্ষা ইনফ্রারেড জোড়া - সার্কিট
পরীক্ষা ইনফ্রারেড জোড়া - সার্কিট
পরীক্ষা ইনফ্রারেড জোড়া - সার্কিট

আমরা কোন কিছুতে খুব গভীরভাবে প্রবেশ করার আগে, আমরা নিশ্চিত করতে পরীক্ষা করব যে IR জোড়া কাজ করে (একটি ইনফ্রারেড LED এবং একটি ইনফ্রারেড ডিটেক্টর)।

আপনার বো-বটের উপরে মাউন্ট করা ব্রেডবোর্ডে উপরের সার্কিটটি তৈরি করে শুরু করুন

ধাপ 5: ইনফ্রারেড পেয়ার পরীক্ষা - বেসিক কোড

অবশ্যই, আমাদের আইআর জোড়া কাজ করার জন্য আমাদের কোড লিখতে হবে

এটি করার জন্য, FREQOUT কমান্ড ব্যবহার করবে। এই কমান্ডটি অডিও টোনগুলির জন্য ডিজাইন করা হয়েছিল, তবে এটি ইনফ্রারেড পরিসরে ফ্রিকোয়েন্সি উত্পাদন করতে ব্যবহার করা যেতে পারে। এই পরীক্ষার জন্য আমরা কমান্ড ব্যবহার করব:

FREQOUT 8, 1, 38500

এটি একটি 38.5 kHz ফ্রিকোয়েন্সি পাঠাবে যা P8 থেকে 1 ms স্থায়ী হয়। P8 এর সাথে সংযুক্ত ইনফ্রারেড LED সার্কিট এই ফ্রিকোয়েন্সি সম্প্রচার করবে। যদি ইনফ্রারেড আলো তার পথের কোন বস্তু দ্বারা বো-বট-এর কাছে প্রতিফলিত হয়, তাহলে ইনফ্রারেড ডিটেক্টর বেসিক স্ট্যাম্পকে একটি সংকেত পাঠাবে যাতে এটি জানাতে পারে যে প্রতিফলিত ইনফ্রারেড আলো ধরা পড়েছে।

একটি IR জোড়া কাজ করার মূল চাবিকাঠি হল 38.5 kHz FREQOUT এর 1 ms পাঠানো এবং অবিলম্বে IR পরিবর্তনকারীর আউটপুট একটি ভেরিয়েবলে সংরক্ষণ করা।

এই উদাহরণটি IRDectectLeft নামে একটি বিট ভেরিয়েবলে IR ডিটেক্টর মান সংরক্ষণ করা দেখায়

FREQOUT 8, 1, 38500

irDetectLeft = IN9

আইআর ডিটেক্টরের আউটপুট অবস্থা যখন দেখে যে কোন আইআর সিগন্যাল বেশি নয়। যখন আইআর ডিটেক্টর 38500 Hz হারমোনিক কোন বস্তু দ্বারা প্রতিফলিত হয়, তখন তার আউটপুট কম থাকে। FREQOUT কমান্ডটি হারমোনিক পাঠানোর পরে আইআর ডিটেক্টরের আউটপুট শুধুমাত্র মিলিসেকেন্ডের একটি ভগ্নাংশের জন্য কম থাকে, তাই FREQOUT কমান্ড পাঠানোর পর অবিলম্বে একটি ভেরিয়েবলে IR ডিটেক্টরের আউটপুট সংরক্ষণ করা অপরিহার্য। ভেরিয়েবল দ্বারা সংরক্ষিত মানটি ডিবাগ টার্মিনালে প্রদর্শিত হতে পারে বা বো-বট দ্বারা নেভিগেশন সিদ্ধান্তের জন্য ব্যবহার করা যেতে পারে।

ধাপ 6: ইনফ্রারেড জোড়া পরীক্ষা করা - হার্ডওয়্যার + সফ্টওয়্যার

পরীক্ষা ইনফ্রারেড জোড়া - হার্ডওয়্যার + সফটওয়্যার
পরীক্ষা ইনফ্রারেড জোড়া - হার্ডওয়্যার + সফটওয়্যার

এখন যেহেতু আপনি বুনিয়াদি জানেন, আমরা হার্ডওয়্যার এবং সফ্টওয়্যারকে একসঙ্গে রেখে একটি জোড়া পরীক্ষা করতে পারি এবং আইআর পেয়ার যা সনাক্ত করছে তার থেকে রিয়েল-টাইম প্রতিক্রিয়া পেতে পারি

আপনি নিজে চেষ্টা করে কোডটি তৈরি করতে পারেন অথবা নিচের কোডটি ব্যবহার করতে পারেন

'{$ STAMP BS2}

'{$ PBASIC 2.5} irDetectLeft VAR Bit DO FREQOUT 8, 1, 38500 irDetectLeft = IN9 DEBUG HOME, "irDetectLeft =", BIN1 irDetectLeft PAUSE 100 LOOP

  1. সিরিয়াল ক্যাবলের সাথে বো-বট সংযুক্ত থাকুন, কারণ আপনি আপনার IR জোড়া পরীক্ষা করার জন্য DEBUG টার্মিনাল ব্যবহার করবেন।
  2. একটি বস্তু রাখুন, যেমন আপনার হাত বা কাগজের একটি শীট, বাম IR জোড়া থেকে প্রায় এক ইঞ্চি দূরে
  3. যাচাই করুন যে যখন আপনি আইআর পেয়ারের সামনে একটি বস্তু রাখেন তখন ডিবাগ টার্মিনাল একটি 0 প্রদর্শন করে, এবং যখন আপনি আইআর জোড়ার সামনে থেকে বস্তুটি সরান, এটি একটি 1 প্রদর্শন করে।
  4. যদি ডিবাগ টার্মিনাল প্রত্যাশিত মান প্রদর্শন না করে, তাহলে সমস্যা-শুটিং ধাপে ধাপগুলি চেষ্টা করুন।

ধাপ 7: সমস্যা-শুটিং (শেষ ধাপের সমস্যাগুলির জন্য)

DEBUG টার্মিনাল অপ্রত্যাশিত মান প্রদর্শন করে

শর্টস, ভুল স্থানান্তরিত বা অনুপস্থিত সংযোগকারী, ক্ষতিগ্রস্ত উপাদান, ভুল প্রতিরোধক বা অন্য কোন দৃশ্যমান সমস্যার জন্য সার্কিট পরীক্ষা করুন

লজিক্যাল বা সিনট্যাক্স ত্রুটি থেকে প্রোগ্রাম চেক করুন - যদি আপনি শেষ ধাপে আপনার নিজের কোড ব্যবহার করেন, তাহলে প্রদত্ত কোড ব্যবহার করার কথা বিবেচনা করুন

সর্বদা 0 পাওয়া, এমনকি যখন কোন বস্তু না থাকে তখনও বো-বটের সামনে রাখা হয়

ইনফ্রারেড সিগন্যাল প্রতিফলিত করে এমন কোন কাছাকাছি বস্তু আছে কিনা তা পরীক্ষা করুন। বো-বটের সামনে টেবিলটি কারণ হতে পারে। বো-বটকে খোলা জায়গায় সরান যাতে আইআর এলইডি এবং ডিটেক্টর নিকটবর্তী কোনো বস্তুকে প্রতিফলিত করতে না পারে।

পড়ার সময় 1 টি বেশিরভাগ সময় যখন বো-বটের সামনে কোন বস্তু থাকে না, কিন্তু মাঝে মাঝে 0 তে ঝাঁকুনি দেয়

কাছাকাছি ফ্লুরোসেন্ট আলোর হস্তক্ষেপ হতে পারে; কাছাকাছি ফ্লুরোসেন্ট লাইট বন্ধ করুন এবং আপনার পরীক্ষা পুনরাবৃত্তি করুন। যদি সমস্যাটি থেকে যায়, ধাপ 9 সমস্যাটি প্রকাশ করতে পারে

ধাপ 8: দ্বিতীয় আইআর পেয়ার

দ্বিতীয় আইআর পেয়ার
দ্বিতীয় আইআর পেয়ার

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

  1. ডান IR জোড়ার উল্লেখ করতে DEBUG স্টেটমেন্ট, টাইটেল এবং মন্তব্য পরিবর্তন করুন।
  2. পরিবর্তনশীল নাম irDetectLeft থেকে irDetectRight এ পরিবর্তন করুন। প্রোগ্রামে আপনাকে চারটি জায়গায় এটি করতে হবে।
  3. FREQOUT কমান্ডের পিন আর্গুমেন্ট 8 থেকে 2 এ পরিবর্তন করুন।
  4. INDetectRight ভেরিয়েবল দ্বারা পর্যবেক্ষণ করা ইনপুট রেজিস্টারটি IN9 থেকে IN0 এ পরিবর্তন করুন।
  5. সঠিক আইআর জোড়ার জন্য এই ক্রিয়াকলাপে পরীক্ষার ধাপগুলি পুনরাবৃত্তি করুন; P2 এর সাথে সংযুক্ত IR LED সার্কিট এবং P0 এর সাথে সংযুক্ত ডিটেক্টর।

ধাপ 9: ইনফ্রারেড হস্তক্ষেপ সনাক্তকরণ (চ্ছিক)

ইনফ্রারেড হস্তক্ষেপ সনাক্তকরণ (চ্ছিক)
ইনফ্রারেড হস্তক্ষেপ সনাক্তকরণ (চ্ছিক)

আপনি যদি সিগন্যাল সনাক্ত করতে সমস্যা হয় যা সনাক্ত করা উচিত নয় অথবা আপনি বিকল্প স্থানে আপনার আইআর সনাক্তকরণ প্রদর্শন করার পরিকল্পনা করছেন, আপনি হস্তক্ষেপের জন্য পরীক্ষা করতে চাইতে পারেন।

এই টেস্টিং প্রোগ্রামের ধারণাটি বেশ সহজ, আপনি কোন প্রেরণ ছাড়াই ইনফ্রারেড সিগন্যাল সনাক্ত করেন।

আপনি ঠিক একই সার্কিট ব্যবহার করতে পারেন কিন্তু আপনাকে কোড পরিবর্তন করতে হবে। আপনি নিজের কোড লিখতে বেছে নিতে পারেন, কিন্তু আপনি নীচের প্রদত্ত কোডটি ব্যবহার করতে পারেন:

'{$ STAMP BS2}

'{$ PBASIC 2.5} #DetectLeft VAR বিট DO irDetectLeft = IN9 irDetectRight = IN0 IF IN9 = 0 অথবা IN0 = 0 তারপর ডিবাগ "হস্তক্ষেপ সনাক্ত করা হয়েছে" PAUSE 100 LOOP

যদি আপনি হস্তক্ষেপের অভিজ্ঞতা পান, তাহলে সম্ভাব্য উৎসটি নির্ধারণ করুন এবং এটি বন্ধ/সরিয়ে দিন অথবা আপনি আপনার বো-বটটি কোথায় পরিচালনা করেন তা স্থানান্তর করুন।

ধাপ 10: আরো IR জোড়া যুক্ত করা

আরো আইআর পেয়ার যুক্ত করা হচ্ছে
আরো আইআর পেয়ার যুক্ত করা হচ্ছে

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

ধাপ 11: পাঁচটি IR জোড়া - সার্কিট

পাঁচটি আইআর পেয়ার - সার্কিট
পাঁচটি আইআর পেয়ার - সার্কিট

পাশের দুটি IR LEDs নির্দেশ করার সময় সতর্কতা অবলম্বন করুন কারণ সেগুলি মোচড়ানোর ফলে লিড স্পর্শ হতে পারে এবং শর্ট সার্কিট হতে পারে।

ধাপ 12: পাঁচটি IR জোড়া - কোড

পাঁচটি আইআর পেয়ার - কোড
পাঁচটি আইআর পেয়ার - কোড

আপনি এই কোডটি ব্যবহারের আগে আপনার বো-বট প্রোগ্রামিং করার চেষ্টা করতে পারেন:

'{$ STAMP BS2}' {$ PBASIC 2.5} 'পাঁচ আইআর পেয়ার ডিটেকশন কোড' ম্যাথিউ শ '8 মে 2019 (সংস্করণ 7)

irDetectLeft VAR বিট 'বাম জন্য পরিবর্তনশীল

irDetectCentre VAR Bit 'Variable for center irDetectRight VAR Bit' Variable for right irDetectLSide VAR Bit 'Variable for left side irDetectRSide VAR Bit' Variable for right side irDetectLSideFar VAR Bit 'পরিবর্তনশীল বাম পাশের কম প্রতিরোধের জন্য irDetectRSideFar VAR বিট কম' ভেরিয়েবল

mLoop VAR শব্দ

Lmotor PIN 15 'বাম মোটরটি 14 পিনের সাথে সংযুক্ত, ডাল এখান দিয়ে যায়

Rmotor PIN 14 'ডান = 15

'গতি হল-> 650-750-850

LFast CON 850 'Conastant for left motor at full speed RFast CON 650' Conastant for right motor at full speed

LStop CON 750 'সম্পূর্ণ গতিতে বাম মোটরের জন্য কনস্ট্যান্ট

RStop CON 650 'পূর্ণ গতিতে সঠিক মোটরের জন্য কনস্ট্যান্ট

LMid CON 830 'মাঝারি গতিতে বাম মোটরের জন্য কনস্ট্যান্ট

মাঝারি গতিতে ডান মোটরের জন্য RMid CON 700 'কনস্ট্যান্ট

LSlow CON 770 'সর্বনিম্ন গতিতে বাম মোটরের জন্য কনস্ট্যান্ট

RSlow CON 730 'ন্যূনতম গতিতে সঠিক মোটরের জন্য কনস্ট্যান্ট

LRev CON 650 'বিপরীত দিকে পূর্ণ গতিতে বাম মোটরের জন্য কনস্ট্যান্ট

বিপরীত দিকে পূর্ণ গতিতে বাম মোটরের জন্য RRev CON 850 'কনস্ট্যান্ট

FREQOUT 7, 1, 38500 'বাম পাশ

irDetectLeft = IN8

FREQOUT 6, 1, 38500 'কেন্দ্র

irDetectCentre = IN5

FREQOUT 3, 1, 38500 'ডান পাশ

irDetectRight = IN2

FREQOUT 10, 1, 38500 'বাম বন্ধ

irDetectLSide = IN11

FREQOUT 1, 1, 38500 'রাইট ক্লোজ

irDetectRSide = IN0

FREQOUT 9, 1, 38500

irDetectLSideFar = IN11

FREQOUT 4, 1, 38500 'ডান পাশ

irDetectRSideFar = IN0

যদি irDetectLSide = 0 এবং irDetectRSide = 0 তারপর প্রধান 'স্টার্টিং কমান্ড' শুরু করে দুই পাশের ডিটেক্টর পার করে প্রোগ্রাম শুরু করতে

প্রধান:

PAUSE 1000 DO

PULSOUT Lmotor, LFast 'বাম মোটর পূর্ণ গতিতে চলে

PULSOUT Rmotor, RFast 'ডান মোটর পূর্ণ গতিতে চলে

FREQOUT 6, 1, 38500 'কেন্দ্র

irDetectCentre = IN5

FREQOUT 10, 1, 38500 'বাম বন্ধ

irDetectLSide = IN11

FREQOUT 1, 1, 38500 'ডান পাশ

irDetectRSide = IN0

যদি irDetectLSide = 0 এবং irDetectRSide = 1 তারপর

PlSOUT Lmotor, LFast করুন

FREQOUT 6, 1, 38500 'কেন্দ্র

irDetectCentre = IN5 যদি irDetectCentre = 0 তখন শতক

FREQOUT 10, 1, 38500 'বাম বন্ধ

irDetectLSide = IN11

FREQOUT 3, 1, 38500 'ডান পাশ

irDetectRight = IN2

LOOP UNTIL irDetectLSide = 1 অথবা irDetectRSide = 0

ELSEIF irDetectLSide = 1 এবং irDetectRSide = 0 তারপর

RMotor, RFast PULSOUT করুন

FREQOUT 6, 1, 38500 'কেন্দ্র

irDetectCentre = IN5 যদি irDetectCentre = 0 তখন শতক

FREQOUT 10, 1, 38500 'বাম বন্ধ

irDetectLSide = IN11

FREQOUT 3, 1, 38500 'ডান পাশ

irDetectRight = IN2

LOOP UNTIL irDetectLSide = 0 অথবা irDetectRSide = 1

'যদি শেষ

যদি irDetectCentre = 0 তারপর শুরু হয়

FREQOUT 7, 1, 38500 'বাম পাশ irDetectLeft = IN8

FREQOUT 6, 1, 38500 'কেন্দ্র

irDetectCentre = IN5

FREQOUT 3, 1, 38500

irDetectRight = IN2

সিগন্যাল সনাক্ত করার জন্য PAUSE 1000 'বিরতি দিন

IF (irDetectLeft = 1 এবং irDetectRight = 0) তারপর সময়কাল মূল্যায়ন করুন

GOSUB টার্ন বাম

ELSEIF (irDetectLeft = 0 এবং irDetectRight = 1) তারপর

GOSUB টার্ন রাইট

ELSEIF (irDetectLeft = 1 এবং irDetectRight = 1) তারপর

GOSUB পালা সিদ্ধান্ত নিন

ELSE

GOSUB turnReverse

যদি শেষ

ENDIF 'শেষ

লুপ

শেষ

বাঁদিকে:

PLSOUT Lmotor, LRev FREQOUT 8, 1, 38500 irDetectLeft = IN9 FREQOUT 5, 1, 38500 irDetectCentre = IN4 FREQOUT 2, 1, 38500 irDetectRight = IN0 LOOP UNTIL IN0 = 1 RETURN

ডানে ঘোরা:

PlSOUT Rmotor, RRev FREQOUT 8, 1, 38500 irDetectLeft = IN9 FREQOUT 5, 1, 38500 irDetectCentre = IN4 FREQOUT 2, 1, 38500 irDetectRight = IN0 LOOP যতক্ষণ না IN9 = 1

প্রত্যাবর্তন

চালু করুন:

MLoop = 0 থেকে 50 PULSOUT Rmotor, RRev Pulsout Lmotor, LRev PAUSE 20 PULSOUT Lmotor, LRev PAUSE 20 NEXT DO PULSOUT Rmotor, RRev FREQOUT 8, 1, 38500 IRET = 8,5500 IRET = 8,5500 IRET = 8,5500 IRET = 8,5500 = 8,5500, 38500 irDetectRight = IN0 LOOP INTIL IN9 = 1

প্রত্যাবর্তন

turnDecide: 'আরও দেখতে কম প্রতিরোধের ব্যবহার করে

FREQOUT 9, 1, 38500

irDetectLSideFar = IN11

FREQOUT 4, 1, 38500 'ডান পাশ

irDetectRSideFar = IN0

IF (irDetectLSideFar = 1 এবং irDetectRSideFar = 0) তারপর সময়কাল মূল্যায়ন করুন

GOSUB টার্ন বাম

ELSEIF (irDetectLSideFar = 0 এবং irDetectRSideFar = 1) তারপর

GOSUB টার্ন রাইট

ELSEIF (irDetectLSideFar = 1 এবং irDetectRSideFar = 1) তারপর

GOSUB টার্ন বাম

ELSE

GOSUB turnReverse

যদি শেষ

প্রত্যাবর্তন

প্রস্তাবিত: