ঘূর্ণন সেন্সর#

ভূমিকা#

ঘূর্ণন সেন্সর একটি শ্যাফটের ঘূর্ণন পরিমাপ করে। এটি রোবটের যেকোনো ঘূর্ণায়মান শ্যাফটের অংশে ব্যবহার করা যেতে পারে, এমনকি যদি সেই শ্যাফটটি সরাসরি মোটরের সাথে সংযুক্ত নাও থাকে।

একটি মোটরে একটি অন্তর্নির্মিত এনকোডার থাকে যা তার নিজের ঘূর্ণন ট্র্যাক করতে পারে। রোটেশন সেন্সরটি একটি বাহ্যিক এনকোডারের মতো কাজ করে যা একটি পৃথক শ্যাফটের ঘূর্ণন ট্র্যাক করতে পারে।

রোটেশন সেন্সরটি শ্যাফটের কোণ, অবস্থান এবং বেগ জানাতে পারে। কোণ হলো শ্যাফটের পরম অবস্থান, যা ০ থেকে ৩৫৯.৯৯ ডিগ্রির মধ্যে থাকে। কোনো প্রজেক্ট শুরু হলে বা রোবট বন্ধ করা হলে এটি রিসেট হয় না। অবস্থান ট্র্যাক করে যে একটি প্রজেক্ট চলাকালীন শ্যাফটটি কত ডিগ্রি বা কতবার সামনে বা পেছনে ঘুরেছে, এবং প্রয়োজন অনুযায়ী এটি রিসেট করা যেতে পারে।

রোটেশন সেন্সরটি ১/৮ ইঞ্চি এবং ১/৪ ইঞ্চি স্ট্যান্ডার্ড VEX শ্যাফটের সাথে সামঞ্জস্যপূর্ণ।

VEX V5 ঘূর্ণন সেন্সর।

এই পৃষ্ঠায় উদাহরণস্বরূপ রোটেশন সেন্সরের নাম হিসেবে rotation_sensor ব্যবহার করা হয়েছে। প্রয়োজন অনুযায়ী এটিকে আপনার নিজস্ব কনফিগার করা নাম দিয়ে প্রতিস্থাপন করুন।

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

  • set_position — রোটেশন সেন্সরের বর্তমান অবস্থান একটি নির্দিষ্ট মানে সেট করে।

  • angle — শ্যাফটের বর্তমান কোণ 0 থেকে 359.99 ডিগ্রী পর্যন্ত ফেরত দেয়।

  • position — শ্যাফটটি কত ডিগ্রি বা কতবার ঘুরেছে তা ফেরত দেয়।

  • velocity — শ্যাফটটি কত দ্রুত ঘুরছে তা ফেরত দেয়।

  • reset_position — রোটেশন সেন্সরের বর্তমান অবস্থান 0-তে রিসেট করে।

  • set_reversed — রোটেশন সেন্সরের আউটপুট বিপরীত হবে কিনা তা নির্ধারণ করে।

  • changed — যখনই রোটেশন সেন্সরের মান পরিবর্তিত হবে তখন চালানোর জন্য একটি ফাংশন নিবন্ধন করে।

কনস্ট্রাক্টর — ম্যানুয়ালি একটি রোটেশন সেন্সর ইনিশিয়ালাইজ করুন।

  • Rotation — একটি ঘূর্ণন সেন্সর তৈরি করে।

সেট_পজিশন#

set_position রোটেশন সেন্সরের বর্তমান অবস্থানকে একটি মানে সেট করে।

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

Usage:
rotation_sensor.set_position(position, units)

প্যারামিটার

বর্ণনা

position

ঘূর্ণন সেন্সরে নির্ধারণ করার জন্য অবস্থানের মান। এটি একটি পূর্ণসংখ্যা বা দশমিক সংখ্যা হতে পারে।

units

ঐচ্ছিক। অবস্থানের একক: DEGREES (ডিফল্ট) অথবা TURNS।

# Set the Rotation Sensor to 2.5 Turns
rotation_sensor.set_position(2.5, TURNS)

কোণ#

angle শ্যাফটের বর্তমান কোণকে একটি ফ্লোট হিসেবে ফেরত দেয়।

অ্যাঙ্গেল একটি ঘূর্ণনের মধ্যে শ্যাফটের পরম অবস্থান ০ থেকে ৩৫৯.৯৯ ডিগ্রি পর্যন্ত নির্দেশ করে। কোনো প্রজেক্ট শুরু হলে বা রোবট বন্ধ করা হলে এটি রিসেট হয় না।

Usage:
rotation_sensor.angle(units)

প্যারামিটার

বর্ণনা

units

ঐচ্ছিক। কোণের একক: DEGREES (ডিফল্ট) অথবা TURNS।

অবস্থান#

position নির্দেশ করে শ্যাফটটি কতটুকু ঘুরেছে।

কোণের বিপরীতে, অবস্থান ৩৫৯.৯৯ ডিগ্রির বেশি হতে পারে বা ০ ডিগ্রির নিচে নামতে পারে। কোনো প্রকল্প চলাকালীন শ্যাফটটি কতটা সামনে বা পেছনে ঘোরে, তা অবস্থান দ্বারা পরিমাপ করা হয় এবং প্রয়োজন অনুযায়ী এটি পুনরায় সেট করা যায়।

Usage:
rotation_sensor.position(units)

প্যারামিটার

বর্ণনা

units

ঐচ্ছিক। অবস্থানের একক: DEGREES (ডিফল্ট) অথবা TURNS।

বেগ#

velocity শ্যাফ্টটি কত দ্রুত ঘুরছে তা নির্দেশ করে।

Usage:
rotation_sensor.velocity(units)

প্যারামিটার

বর্ণনা

units

বেগের একক: VelocityUnits.RPM (ঘূর্ণন প্রতি মিনিট) অথবা VelocityUnits.DPS (ডিগ্রি প্রতি সেকেন্ড)।

রিসেট_পজিশন#

reset_position রোটেশন সেন্সরের বর্তমান অবস্থানকে 0-তে রিসেট করে।

Usage:
rotation_sensor.reset_position()

প্যারামিটার

বর্ণনা

এই পদ্ধতিতে কোনো প্যারামিটার নেই।

সেট_রিভার্সড#

set_reversed নির্ধারণ করে যে রোটেশন সেন্সরের আউটপুট বিপরীত হবে কিনা।

বিপরীত করলে, ধনাত্মক মান ঋণাত্মক হয়ে যায় এবং ঋণাত্মক মান ধনাত্মক হয়ে যায়। এই পদ্ধতিটি Rotation কনস্ট্রাক্টর ব্যবহার করার সময় reverse প্যারামিটারকে True তে সেট করার মতোই কাজ করে।

Usage:
rotation_sensor.set_reversed(value)

প্যারামিটার

বর্ণনা

value

ঘূর্ণন সেন্সরের আউটপুট উল্টানো হবে কিনা: True অথবা False।

পরিবর্তিত#

changed এমন একটি ফাংশন রেজিস্টার করে, যা রোটেশন সেন্সরের মান পরিবর্তিত হলেই কল করা হবে।

Usage:
rotation_sensor.changed(callback, arg)

প্যারামিটার

বর্ণনা

callback

পূর্বে সংজ্ঞায়িত একটি ফাংশন যা রোটেশন সেন্সরের মান পরিবর্তিত হলে চলে।

arg

ঐচ্ছিক। কলব্যাক ফাংশনে পাস করার জন্য আর্গুমেন্ট ধারণকারী একটি টাপল। আরও তথ্যের জন্য প্যারামিটার সহ ফাংশনের ব্যবহার দেখুন।

def my_function():
  brain.screen.print("Rotated!")

# Call my_function whenever rotation_sensor's value changes
rotation_sensor.changed(my_function)

নির্মাতা#

কনস্ট্রাক্টর ব্যবহার করা হয় ম্যানুয়ালি Rotation অবজেক্ট তৈরি করার জন্য, যেমন VEXcode-এর বাইরে কোনো Rotation Sensor কনফিগার করার সময়।

Rotation#

Rotation একটি Rotation Sensor অবজেক্ট তৈরি করে।

Usage:
Rotation(smartport)

প্যারামিটার

বর্ণনা

smartport

যে স্মার্ট পোর্টের সাথে রোটেশন সেন্সরটি সংযুক্ত থাকে, তা Ports.PORTxহিসেবে লেখা হয়, যেখানে x হলো পোর্ট নম্বর।

reverse

ঐচ্ছিক। রোটেশন সেন্সর আউটপুট উল্টানো হবে কিনা: True অথবা False (ডিফল্ট)।

# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)