Skip to main content

পাঠ ৩: '১' নম্বরে গাড়ি চালাও

  • VR রোবটটিকে তার শুরুর অবস্থানে ফিরিয়ে আনতে খেলার মাঠটি পুনরায় সেট করুন।
  • এখন, VR রোবটটি ঘুরে দাঁড়াবে এবং নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড-এ '31' নম্বরে পৌঁছালে '1' নম্বরে ফিরে আসবে।

    নম্বর গ্রিড ম্যাপ খেলার মাঠের উপর থেকে নীচের দৃশ্য, দুটি অক্ষ নির্দেশক সহ 31 নম্বর স্থানের অবস্থান চিহ্নিত করছে। ভিআর রোবটটি ৩১ নম্বর স্থানে -৯০০ X এবং -৩০০ Y এ রয়েছে।
  • [ড্রাইভিং বন্ধ করুন] ব্লকটি সরান এবং নিম্নলিখিত ব্লকগুলির সাথে এটি প্রতিস্থাপন করুন।

    রোবটটিকে স্পেস ১ থেকে স্পেস ৩১ এবং স্পেস ১-এ ফিরিয়ে আনার জন্য আমাদের প্রকল্পে আগের থেকে যে ব্লকগুলি যোগ করতে হবে তার একটি সারসংক্ষেপ। এটি স্টপ ড্রাইভিং ব্লকের আগে টার্ন, ড্রাইভ এবং ওয়েট ব্লক যোগ করে করা হয়। সম্পূর্ণ প্রকল্পটি এখন "শুরু হলে, এগিয়ে যান এবং অপেক্ষা করুন" পর্যন্ত লেখা আছে। মিলিমিটারে রোবটের অবস্থান -৩০০ এর চেয়ে বেশি। এরপর ১৮০ ডিগ্রি ডানদিকে ঘুরুন এবং তারপর সামনের দিকে গাড়ি চালান। সবশেষে অপেক্ষা করুন যতক্ষণ না মিলিমিটারে রোবটের অবস্থান -৯০০ এর কম হয় এবং তারপর গাড়ি চালানো বন্ধ করুন।
  • নোট করুন যে দ্বিতীয় [অপেক্ষা করুন] ব্লকে <Greater than> ব্লকের পরিবর্তে <Less than> ব্লক রয়েছে। এর কারণ হল VR রোবট এখন Y অক্ষের নিচে চলে যাচ্ছে এবং সংখ্যাগুলি আরও নেতিবাচক হয়ে উঠছে। Y-মানগুলি -900-এর থেকে কম হলে VR রোবট বন্ধ হয়ে যাবে৷

    একই VEXcode VR ব্লক প্রকল্পটি VR রোবটকে স্পেস ১ থেকে স্পেস ৩১ থেকে স্পেস ১ এ চালিত করবে, যেখানে দ্বিতীয় Wait Until ব্লকটি হাইলাইট করা হবে যাতে গ্রেটার থান ব্লকের পরিবর্তে লেস থান ব্লক ব্যবহারের দিকে দৃষ্টি আকর্ষণ করা যায়। পুরো প্রকল্পটিতে লেখা আছে "শুরু হলে, এগিয়ে যান এবং অপেক্ষা করুন Y পর্যন্ত"। মিলিমিটারে রোবটের অবস্থান -৩০০ এর চেয়ে বেশি। এরপর ১৮০ ডিগ্রি ডানদিকে ঘুরুন এবং তারপর সামনের দিকে গাড়ি চালান। সবশেষে অপেক্ষা করুন যতক্ষণ না মিলিমিটারে রোবটের অবস্থান -৯০০ এর কম হয় এবং তারপর গাড়ি চালানো বন্ধ করুন।
  • নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড চালু করুন যদি এটি ইতিমধ্যে খোলা না থাকে এবং প্রকল্পটি চালান।
  • নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড-এ '1' নম্বরে ভিআর রোবট ড্রাইভ দেখুন।
  • এই প্রকল্পে, ভিআর রোবটটি নম্বর গ্রিড ম্যাপ প্লেগ্রাউন্ড-এ '1' নম্বরে চলে যায়। যেহেতু VR রোবট '1' নম্বরে নিয়ে যাওয়ার ফলে Y-মান কমছে , প্রকল্পটি একটি <Less than> ব্লক ব্যবহার করে।
  • VR রোবটটি যখন নির্দেশিত নম্বরটি চালু আছে তার Y-মানের থেকে কম হলেই থামবে। যেহেতু '1' নম্বরের Y-মান -900, তাই Y-মান -900-এর কম হলে VR রোবট গাড়ি চালানো বন্ধ করে দেবে।

    আমরা যে VEXcode VR ব্লক প্রকল্পে কাজ করছি তাতে যুক্তির প্রবাহকে কল্পনা করার একটি চিত্র। প্রকল্পটি সামনের দিকে এগিয়ে যাওয়ার মাধ্যমে শুরু হয় এবং মিলিমিটারে রোবট সেন্সরের Y অবস্থানের অবস্থান -300 এর বেশি না হওয়া পর্যন্ত সেই কমান্ডটি ধরে রাখে। এরপর ১৮০ ডিগ্রি ডানদিকে ঘুরুন এবং সামনের দিকে গাড়ি চালান, সেই কমান্ডটি ধরে রাখুন যতক্ষণ না মিলিমিটারে রোবট সেন্সরের Y অবস্থান -৯০০ এর কম হয়, এরপর একটি স্টপ ড্রাইভিং ব্লক ড্রাইভ ফরোয়ার্ড কমান্ডটি শেষ করে।

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

    একটি প্রোগ্রামার একটি প্রকল্পের অংশগুলি কী করতে চায় তা ব্যাখ্যা করার জন্য সাধারণত প্রকল্পগুলিতে মন্তব্যগুলি যোগ করা হয়। সহযোগিতা এবং সমস্যা সমাধানের সময় মন্তব্যগুলি সহায়ক, কারণ তারা কোডের প্রসঙ্গ এবং সামগ্রিক অর্থ প্রদান করে। মন্তব্যগুলি ব্যবহার করা প্রোগ্রামারকে "অনুমান এবং পরীক্ষা করার" চেষ্টা করার পরিবর্তে প্রকল্পের সামগ্রিক লক্ষ্য এবং উদ্দেশ্য সম্পর্কে ধারণাগতভাবে চিন্তা করতে দেয়। আপনি কি মনে রাখতে চান যে কোন স্থানাঙ্কগুলি একটি নির্দিষ্ট সংখ্যার সাথে যায়? "(-900, 700) এ অবস্থিত 81-এ ড্রাইভ করুন" বলে একটি মন্তব্য যোগ করুন। এটি প্রকল্পের বিভিন্ন বিভাগ এবং ব্লকের সাথে যোগাযোগ করতে সাহায্য করে।

    একটি উদাহরণ VEXcode VR রোবটকে স্পেস ১ থেকে স্পেস ৮১ এবং আবার স্পেস ৪১-এ নিয়ে যাওয়ার প্রকল্পকে ব্লক করে। কোডটি আরও পঠনযোগ্য করার জন্য মন্তব্য যোগ করা হয়েছে এবং ডিবাগিংয়ে সহায়তা করার জন্য প্রতিটি অবস্থানের স্থানাঙ্ক তালিকাভুক্ত করা হয়েছে। প্রকল্পটি শুরু হয় "When Started" ব্লক দিয়ে এবং তারপরে একটি মন্তব্য থাকে যেখানে লেখা থাকে 'Drive to 81 located at (-900,700)'। পরবর্তী এগিয়ে যান এবং অপেক্ষা করুন যতক্ষণ না Y মিলিমিটারে রোবটের অবস্থান 700 এর বেশি হয়। এরপর একটি মন্তব্যে লেখা আছে 'ঘুরে যাও' এবং তারপর ১৮০ ডিগ্রি ডানে ঘুরতে একটি ব্লক। এরপর আরেকটি মন্তব্য আছে যেখানে লেখা আছে 'Drive to 41 located at (-900, -100)' এবং তারপর একটি Drive Forward ব্লক। সবশেষে, মিলিমিটারে রোবটের অবস্থান -১০০ এর কম না হওয়া পর্যন্ত অপেক্ষা করুন এবং তারপর গাড়ি চালানো বন্ধ করুন।

    মন্তব্য সম্পর্কে আরও তথ্যের জন্য, টি মন্তব্য - ভিআর ব্লক নিবন্ধটি দেখুন।

সুইচ ব্লক ব্যবহার করা 

নিচের ছবিতে উপরের প্রকল্পটিকে একটি সুইচ ব্লকে রূপান্তরিত দেখানো হয়েছে। মনে রাখবেন যে পাইথনে মন্তব্যগুলি সবুজ রঙে লেখা হয়। পাইথনে আপনি পাউন্ড চিহ্ন (#) লিখে আপনার মন্তব্য লিখতে পারেন। 

VR ব্লক কোডের একটি VEXcode VR সুইচ ব্লক বাস্তবায়ন যা স্পেস 1 থেকে স্পেস 81, স্পেস 41 এ ভ্রমণ করতে সাহায্য করে। সুইচ কোডটি ১১টি লাইন লম্বা, নিম্নরূপ: '# Drive to 81 located at (-900, 700), drivetrain.drive(FORWARD), while not location.position(Y, MM) > 700: wait(5, MSEC), # Turn around, drivetrain.turn_for(RIGHT, 180, DEGREES), # Drive to 41 located at (-900, -100), drivetrain.drive(FORWARD), while not location.position(Y, MM) < -100: wait(5, MSEC), drivetrain.stop()'.

এই পাঠের বাকি অংশটি চালিয়ে যেতে পরবর্তী বোতামটি নির্বাচন করুন।