নিয়ন্ত্রক#

ভূমিকা#

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

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

নিচে উপলব্ধ ব্লকগুলোর একটি তালিকা দেওয়া হলো:

মান — কন্ট্রোলারের বাটনের অবস্থা পরীক্ষা করুন অথবা জয়স্টিকের অবস্থান পড়ুন।

অ্যাকশন — কন্ট্রোলারের ইনপুট পরিবর্তন হলে কন্ট্রোলারটি কাঁপান, কনফিগার করা কন্ট্রোলার অ্যাকশনগুলো চালু/বন্ধ করুন, অথবা ব্লক চালান।

স্ক্রিন — কন্ট্রোলার স্ক্রিনে লেখা এবং সংখ্যা প্রদর্শন করুন।

মূল্যবোধ#

কন্ট্রোলার চাপা হয়েছে?#

Controller pressed? বুলিয়ান ব্লকটি নির্দেশ করে যে নির্বাচিত কন্ট্রোলার বাটনটি চাপা হচ্ছে কি না।

V5 কন্ট্রোলারের সামনের এবং পিছনের দিক, যেখানে বাটনগুলো হলুদ রঙে হাইলাইট করা আছে। কন্ট্রোলারের উপরিভাগে বাম দিকে আপ, ডাউন, লেফট এবং রাইট অ্যারো বাটন এবং ডান দিকে ১২টা থেকে ঘড়ির কাঁটার দিকে X, A, B, Y বাটন রয়েছে। কন্ট্রোলারের পিছনের দিকে যথাক্রমে বাম এবং ডান পাশে L1, L2, R1, এবং R2 বাটন রয়েছে।

কন্ট্রোলার চাপা হয়েছে? বুলিয়ান ব্লক#
<[Controller1 v] [▲ v] চাপা হয়েছে?>

প্যারামিটার

বর্ণনা

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

বোতাম

যাচাই করার বাটন:

  • ▲
  • ▼
  • ◀
  • ▶
  • X
  • B
  • Y
  • A
  • L1
  • L2
  • R1
  • R2

উদাহরণ

চালু করার পর, X বাটনটি চেপে রাখলে গাড়িটি সামনের দিকে এগোতে থাকে।#
শুরু হলে
[Drive forward while X is pressed.]
চিরকাল
যদি <[Controller1 v] [X v] চাপা হয়েছে?> তাহলে
[সামনে v] দিকে চালাও
অন্যথায়
চালানো বন্ধ করো
अंत
अंत

কন্ট্রোলার অবস্থান#

কন্ট্রোলার পজিশন রিপোর্টার ব্লকটি নির্বাচিত অক্ষ বরাবর জয়স্টিকের অবস্থানকে -১০০ থেকে ১০০ পর্যন্ত একটি সংখ্যা হিসেবে ফেরত দেয়।

একটি VEX V5 কন্ট্রোলার যার জয়স্টিকগুলোর চারপাশের অক্ষগুলো চিহ্নিত করা আছে। অক্ষ ১ এবং ২ ডান জয়স্টিকের চারপাশে, এবং অক্ষ ৩ এবং ৪ বাম জয়স্টিকের চারপাশে অবস্থিত।

কন্ট্রোলার পজিশন রিপোর্টার ব্লক#
([Controller1 v] [1 v] position :: sensing)

প্যারামিটার

বর্ণনা

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

অক্ষ

যে জয়স্টিক অ্যাক্সিসটি রিপোর্ট করতে হবে:

  • 1 — ডান জয়স্টিকের হরাইজন্টাল অ্যাক্সিস
  • 2 — ডান জয়স্টিকের ভার্টিকাল অ্যাক্সিস
  • 3 — বাম জয়স্টিকের ভার্টিকাল অ্যাক্সিস
  • 4 — বাম জয়স্টিকের হরাইজন্টাল অ্যাক্সিস

উদাহরণ

চালু করার পর, বাম জয়স্টিকটি উপরের দিকে চেপে রাখলে গাড়িটি সামনের দিকে এগোয়।#
শুরু হলে
[Drive forward while the left joystick is pushed up.]
চিরকাল
যদি <([Controller1 v] [3 v] position :: sensing) [math_greater_than v] [0]> তাহলে
[সামনে v] দিকে চালাও
অন্যথায়
চালানো বন্ধ করো
अंत
अंत

কর্ম#

কন্ট্রোলারে রাম্বল খেলুন#

প্লে রাম্বল অন কন্ট্রোলার স্ট্যাক ব্লকটি কন্ট্রোলারে একটি রাম্বল প্যাটার্ন বাজায়।

কন্ট্রোলারে রাম্বল প্লে করুন স্ট্যাক ব্লক#
[Controller1 v]-এ [দীর্ঘ v] রাম্বেল বাজাও

প্যারামিটার

বর্ণনা

প্যাটার্ন

কন্ট্রোলারে বাজানোর জন্য রাম্বল প্যাটার্ন:

  • দীর্ঘ — একটি দীর্ঘ রাম্বল
  • সংক্ষিপ্ত — একটি সংক্ষিপ্ত রাম্বল
  • স্পন্দন — চালু ও বন্ধ রাম্বলের একটি প্যাটার্ন

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

উদাহরণ

R1 বাটন চাপলে কন্ট্রোলারে একটি সংক্ষিপ্ত কম্পন শোনা যায়।#
যখন[Controller1 v] বোতাম [R1 v] [চাপা হয়েছে v] :: hat events
[Controller1 v]-এ [সংক্ষিপ্ত v] রাম্বেল বাজাও

কন্ট্রোলার সক্রিয়/নিষ্ক্রিয়#

কন্ট্রোলার এনাবল/ডিজেবল স্ট্যাক ব্লকটি ডিভাইসেস মেনু থেকে কনফিগার করা কন্ট্রোলার অ্যাকশনগুলোকে সকল সংযুক্ত কন্ট্রোলারের জন্য এনাবল বা ডিজেবল করে।

কন্ট্রোলার স্ট্যাক ব্লক সক্ষম/অক্ষম করুন#
Controller [নিষ্ক্রিয় করো v]

প্যারামিটার

বর্ণনা

রাজ্য

কন্ট্রোলারের কনফিগার করা অ্যাকশন স্টেট: ডিজেবল বা এনেবল।

উদাহরণ

চালু করা হলে, রোবটটি সামনে চলার সময় কনফিগার করা কন্ট্রোলার অ্যাকশনগুলো নিষ্ক্রিয় করে দেয়।#
শুরু হলে
[Disable Controller configured actions until the drive movement is done.]
Controller [নিষ্ক্রিয় করো v]
[সামনে v] দিকে (6) [ইঞ্চি v] চালাও ▶
Controller [সক্রিয় করো v]

যখন কন্ট্রোলার বোতাম চাপা হয়#

যখন কন্ট্রোলার বাটন চাপা হয় Hat ব্লকটি, নির্বাচিত কোনো কন্ট্রোলার বাটন চাপা বা ছাড়ার সময় সংযুক্ত স্ট্যাকটিকে চালায়।

V5 কন্ট্রোলারের সামনের এবং পিছনের দিক, যেখানে বাটনগুলো হলুদ রঙে হাইলাইট করা আছে। কন্ট্রোলারের উপরিভাগে বাম দিকে আপ, ডাউন, লেফট এবং রাইট অ্যারো বাটন এবং ডান দিকে ১২টা থেকে ঘড়ির কাঁটার দিকে X, A, B, Y বাটন রয়েছে। কন্ট্রোলারের পিছনের দিকে যথাক্রমে বাম এবং ডান পাশে L1, L2, R1, এবং R2 বাটন রয়েছে।

যখন কন্ট্রোলারের বোতাম চাপা হয় হ্যাট ব্লক#
যখন[Controller1 v] বোতাম [▲ v] [চাপা হয়েছে v] :: hat events

প্যারামিটার

বর্ণনা

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

বোতাম

যাচাই করার বাটন:

  • ▲
  • ▼
  • ◀
  • ▶
  • X
  • B
  • Y
  • A
  • L1
  • L2
  • R1
  • R2

বোতামের অবস্থা

যে বাটন ইভেন্টটি সংযুক্ত স্ট্যাকটিকে সক্রিয় করে: চাপ দেওয়া বা ছেড়ে দেওয়া।

উদাহরণ

R1 বাটন চাপলে ২০০ মিলিমিটার সামনে এগিয়ে যায়।#
যখন[Controller1 v] বোতাম [R1 v] [চাপা হয়েছে v] :: hat events
[Drive forward when R1 is pressed.]
[সামনে v] দিকে (200) [mm v] চালাও ▶

যখন কন্ট্রোলার অক্ষ পরিবর্তন করা হয়#

যখন কন্ট্রোলার অক্ষ পরিবর্তিত হয় (when Controller axis is changed) হ্যাট ব্লকটি, নির্বাচিত অক্ষ বরাবর জয়স্টিকের অবস্থান পরিবর্তিত হলে সংযুক্ত স্ট্যাকটি চালায়।

একটি VEX V5 কন্ট্রোলার যার জয়স্টিকগুলোর চারপাশের অক্ষগুলো চিহ্নিত করা আছে। অক্ষ ১ এবং ২ ডান জয়স্টিকের চারপাশে, এবং অক্ষ ৩ এবং ৪ বাম জয়স্টিকের চারপাশে অবস্থিত।

যখন কন্ট্রোলার অক্ষ পরিবর্তন করা হয় হ্যাট ব্লক#
when [Controller1 v] axis [1 v] is changed :: hat events

প্যারামিটার

বর্ণনা

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

অক্ষ

যে জয়স্টিক অক্ষগুলো পরীক্ষা করতে হবে:

  • ১ — ডান জয়স্টিকের অনুভূমিক অক্ষ
  • ২ — ডান জয়স্টিকের উল্লম্ব অক্ষ
  • ৩ — বাম জয়স্টিকের উল্লম্ব অক্ষ
  • ৪ — বাম জয়স্টিকের অনুভূমিক অক্ষ

উদাহরণ

যখন জয়স্টিকের অবস্থান কন্ট্রোলার অ্যাক্সিস ৩ বরাবর পরিবর্তিত হয়, তখন এটি ২০০ মিলিমিটার সামনে এগিয়ে যায়।#
when [Controller1 v] axis [3 v] is changed :: hat events
[Drive forward when the joystick's position changes along axis 3.]
[সামনে v] দিকে (200) [mm v] চালাও ▶

স্ক্রিন#

কন্ট্রোলারে কার্সার সারি কলামে সেট করুন#

set cursor to row column on controller স্ট্যাক ব্লকটি কন্ট্রোলার স্ক্রিনের একটি নির্দিষ্ট সারি এবং কলামে কার্সারকে নিয়ে যায়। পরবর্তী মুদ্রিত মানটি সেই অবস্থানে প্রদর্শিত হবে।

কন্ট্রোলার স্ট্যাক ব্লকে কার্সার সারি কলামে সেট করুন#
[Controller1 v]-এ সারি [1] কলাম [1]-এ কার্সার নিয়ে যাও :: custom-controller-inertial-timer

প্যারামিটার

বর্ণনা

সারি

কন্ট্রোলার স্ক্রিনে কার্সারটি যে সারিতে সরাতে হবে।

কলাম

কন্ট্রোলার স্ক্রিনে যে কলামে কার্সার সরানো হবে।

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

উদাহরণ

চালু করা হলে, কন্ট্রোলার স্ক্রিনের ২য় সারি ও ১ম কলামে টেক্সট প্রিন্ট করে।#
শুরু হলে
[Display a message on row 2.]
[Controller1 v]-এ সারি [2] কলাম [1]-এ কার্সার নিয়ে যাও :: custom-controller-inertial-timer
[Controller1 v]-এ [Ready] প্রিন্ট করো ▶ :: custom-controller-inertial-timer

কন্ট্রোলারে কার্সারকে পরবর্তী সারিতে সেট করুন#

set cursor to next row on controller স্ট্যাক ব্লকটি কার্সারকে কন্ট্রোলার স্ক্রিনের পরবর্তী সারির ১ নম্বর কলামে নিয়ে যায়। পরবর্তী প্রিন্ট করা মানটি সেই সারিতে প্রদর্শিত হবে।

কন্ট্রোলার স্ট্যাক ব্লকের পরবর্তী সারিতে কার্সার সেট করুন#
[Controller1 v]-এ পরের সারিতে কার্সার নিয়ে যাও :: custom-controller-inertial-timer

প্যারামিটার

বর্ণনা

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

উদাহরণ

চালু করা হলে, কন্ট্রোলার স্ক্রিনে দুটি সারি প্রিন্ট করে।#
শুরু হলে
[Display two rows of text.]
[Controller1 v]-এ [Row 1] প্রিন্ট করো ▶ :: custom-controller-inertial-timer
[Controller1 v]-এ পরের সারিতে কার্সার নিয়ে যাও :: custom-controller-inertial-timer
[Controller1 v]-এ [Row 2] প্রিন্ট করো ▶ :: custom-controller-inertial-timer

কন্ট্রোলারে প্রিন্ট প্রিসিশন সেট করুন#

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

কন্ট্রোলার স্ট্যাক ব্লকে প্রিন্ট প্রিসিশন সেট করুন#
[Controller1 v]-এ প্রিন্টের নির্ভুলতা [0.1 v] সেট করো :: custom-controller-inertial-timer

প্যারামিটার

বর্ণনা

নির্ভুলতা

ব্যবহার করার জন্য প্রিন্ট প্রিসিশন:

  • ১ — কোনো দশমিক স্থান নেই
  • ০.১ — ১ দশমিক স্থান
  • ০.০১ — ২ দশমিক স্থান
  • ০.০০১ — ৩ দশমিক স্থান
  • সমস্ত অঙ্ক — উপলব্ধ সমস্ত দশমিক স্থান

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

উদাহরণ

চালু করা হলে, কন্ট্রোলার স্ক্রিনে দুই দশমিক স্থানসহ ১/৩ প্রদর্শন করে।#
শুরু হলে
[Display 1/3 with two decimals.]
[Controller1 v]-এ প্রিন্টের নির্ভুলতা [0.01 v] সেট করো :: custom-controller-inertial-timer
[Controller1 v]-এ ([1] [math_division v] [3]) প্রিন্ট করো ▶ :: custom-controller-inertial-timer

পরিষ্কার কন্ট্রোলার#

clear controller স্ট্যাক ব্লকটি কন্ট্রোলার স্ক্রিনের সমস্ত সারি মুছে ফেলে এবং কার্সারকে প্রথম সারিতে ফিরিয়ে নিয়ে যায়।

কন্ট্রোলার স্ট্যাক ব্লক পরিষ্কার করুন#
[Controller1 v] মুছে দাও :: custom-controller-inertial-timer

প্যারামিটার

বর্ণনা

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

উদাহরণ

চালু হলে, এটি টেক্সট প্রিন্ট করে, কিছুক্ষণ অপেক্ষা করে, তারপর কন্ট্রোলার স্ক্রিনটি পরিষ্কার করে দেয়।#
শুরু হলে
[Clear the Controller screen after printing.]
[Controller1 v]-এ [This will disappear...] প্রিন্ট করো ▶ :: custom-controller-inertial-timer
[2] সেকেন্ড অপেক্ষা করো
[Controller1 v] মুছে দাও :: custom-controller-inertial-timer

কন্ট্রোলারে সারি পরিষ্কার করুন#

clear row on controller স্ট্যাক ব্লকটি কন্ট্রোলার স্ক্রিনের একটিমাত্র সারি মুছে ফেলে।

কন্ট্রোলার স্ট্যাক ব্লকে সারি পরিষ্কার করুন#
[Controller1 v]-এ [1] সারি মুছে দাও :: custom-controller-inertial-timer

প্যারামিটার

বর্ণনা

সারি

কন্ট্রোলার স্ক্রিনে যে সারিটি খালি করতে হবে।

ডিভাইস

ব্যবহার করার জন্য কন্ট্রোলারটি ডিভাইসেস উইন্ডোতে কনফিগার করা হয়েছে।

উদাহরণ

চালু করা হলে, কন্ট্রোলার স্ক্রিনের প্রথম সারিটি খালি হয়ে যায়।#
শুরু হলে
[Clear one row on the Controller screen.]
[Controller1 v]-এ [Row 1] প্রিন্ট করো ▶ :: custom-controller-inertial-timer
[Controller1 v]-এ পরের সারিতে কার্সার নিয়ে যাও :: custom-controller-inertial-timer
[Controller1 v]-এ [Row 2] প্রিন্ট করো ▶ :: custom-controller-inertial-timer
[2] সেকেন্ড অপেক্ষা করো
[Controller1 v]-এ [1] সারি মুছে দাও :: custom-controller-inertial-timer