রোবট-নির্দিষ্ট পাইথন#

ভূমিকা#

হিরো বট মবি-তে একটি মোটর গ্রুপ, অপটিক্যাল সেন্সর, রোটেশন সেন্সর এবং গেম পজিশনিং সিস্টেম (জিপিএস) সেন্সর অন্তর্ভুক্ত রয়েছে।

V5 21-22 টিপিং পয়েন্ট প্লেগ্রাউন্ডে সমস্ত স্ট্যান্ডার্ড VEXcode VR পদ্ধতি ব্যবহারের জন্য উপলব্ধ।

নিম্নে সকল উপলব্ধ রোবট-নির্দিষ্ট পদ্ধতির একটি তালিকা দেওয়া হলো:

ড্রাইভট্রেন – রোবটটিকে চালনা ও ঘোরানোর কাজ করে।

  • কর্ম

    • drive — রোবটটিকে অনির্দিষ্টকালের জন্য সামনে বা পিছনে চালনা করে।

    • drive_for — রোবটটিকে একটি নির্দিষ্ট দূরত্বে সামনে বা পিছনে নিয়ে যায়।

    • turn — রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়।

    • turn_for — রোবটটিকে নির্দিষ্ট সংখ্যক ডিগ্রিতে বামে বা ডানে ঘোরায়।

    • turn_to_heading — রোবটটিকে -359 থেকে 359 ডিগ্রির মধ্যে একটি নির্দিষ্ট দিকে মুখ করে ঘোরায়।

    • turn_to_rotation — রোবটটিকে একটি নির্দিষ্ট ঘূর্ণনে ঘোরায়।

    • stop — রোবটের চলাচল থামিয়ে দেয়।

  • Mutators

    • set_heading — রোবটের বর্তমান দিক পরিবর্তন করে একটি নতুন দিকে নিয়ে যায়।

    • set_rotation — রোবটের বর্তমান ঘূর্ণনকে একটি নতুন ঘূর্ণনে পরিবর্তন করে।

    • set_timeout — রোবট একটি মুভমেন্ট শেষ করার জন্য কত সময় চেষ্টা করবে তা সেট করে।

    • set_drive_velocity — রোবটকে বলে দেয় কত দ্রুত চালাতে হবে।

    • set_turn_velocity — রোবটকে বলে দেয় কত দ্রুত ঘুরতে হবে।

  • গেটার্স

    • heading — রোবটের বর্তমান হেডিং 0 থেকে 359.99 ডিগ্রির মধ্যে ফেরত দেয়।

    • rotation — রোবটের বর্তমান ঘূর্ণন ফেরত দেয়।

    • is_done — রোবটটির চলাচল শেষ হয়েছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।

    • is_moving — রোবটটি চলছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।

    • velocity — রোবটটি কত দ্রুত চলছে তা ফেরত দেয়।

গতি – রোবটের মোটর গ্রুপকে চালনা ও অনুসরণ করা।

  • কর্ম

    • spin — একটি মোটর গ্রুপকে অনির্দিষ্টকালের জন্য সামনে বা পিছনে ঘোরায়।

    • spin_for — একটি মোটর গ্রুপকে একটি নির্দিষ্ট দূরত্বে ঘোরায়।

    • spin_to_position — একটি মোটর গ্রুপকে একটি নির্দিষ্ট অবস্থানে ঘোরায়।

    • stop — একটি মোটর গ্রুপের ঘূর্ণন বন্ধ করে।

  • Mutators

    • set_position — মোটর গ্রুপের বর্তমান অবস্থানকে একটি নতুন মানে পরিবর্তন করে।

    • set_velocity — একটি মোটর গ্রুপকে বলে দেয় কত দ্রুত ঘুরতে হবে।

    • set_timeout — একটি মোটর গ্রুপ একটি নড়াচড়া শেষ করার জন্য কত সময় চেষ্টা করবে তা নির্ধারণ করে।

  • গেটার্স

    • is_done — মোটর গ্রুপের নড়াচড়া শেষ হয়েছে কিনা, তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।

    • is_spinning — মোটর গ্রুপটি ঘুরছে কিনা তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়।

    • position — মোটর গ্রুপের বর্তমান অবস্থান ফেরত দেয়।

    • velocity — মোটর গ্রুপটি কত দ্রুত ঘুরছে তা ফেরত দেয়।

কনসোল – কনসোলে প্রিন্ট করুন এবং মানগুলো পর্যবেক্ষণ করুন।

  • প্রিন্ট

    • brain.screen.print — কনসোলে টেক্সট, সংখ্যা, অথবা ভেরিয়েবলের মান প্রদর্শন করে।

    • brain.screen.next_row — কনসোল কার্সারকে পরবর্তী সারির শুরুতে নিয়ে যায়।

    • brain.screen.clear_screen — কনসোল থেকে সমস্ত সারি মুছে ফেলে।

  • মনিটর

    • monitor_variable — মনিটর ট্যাবে এক বা একাধিক পূর্বনির্ধারিত ভেরিয়েবল যোগ করে।

    • monitor_sensor — মনিটর ট্যাবে এক বা একাধিক সেন্সর মান যোগ করে।

সংবেদন - রোবটের বিভিন্ন সেন্সর ব্যবহার করুন।

  • অপটিক্যাল

    • is_near_object – অপটিক্যাল সেন্সর সীমার মধ্যে কোনো বস্তু সনাক্ত করে কিনা তা ফেরত দেয়।

    • color – অপটিক্যাল সেন্সর দ্বারা শনাক্ত করা রঙটি ফেরত দেয়।

    • brightness – বস্তু থেকে প্রতিফলিত আলোর পরিমাণ ফেরত দেয়।

    • hue – অপটিক্যাল সেন্সর দ্বারা শনাক্ত করা রঙ (hue) ফেরত দেয়।

    • object_detected – অপটিক্যাল সেন্সর কোনো বস্তু শনাক্ত করলে যে ফাংশনটি কল করা হবে তা রেজিস্টার করে।

    • object_lost – অপটিক্যাল সেন্সর কোনো বস্তু হারালে যে ফাংশনটি কল করা হবে তা রেজিস্টার করে।

  • ঘূর্ণন

    • set_position – ঘূর্ণন সেন্সরের বর্তমান অবস্থান একটি নির্দিষ্ট মানে সেট করে।

    • angle – 0 এবং 359.99 ডিগ্রির মধ্যে সেন্সরের বর্তমান কোণ ফেরত দেয়।

    • position – মোট ঘূর্ণন অবস্থান ডিগ্রি বা পাক সংখ্যায় ফেরত দেয়।

  • জিপিএস

    • x_position – মাঠে থাকা একটি GPS সেন্সরের বর্তমান x স্থানাঙ্ক ফেরত দেয়।

    • y_position – মাঠে থাকা একটি GPS সেন্সরের বর্তমান y স্থানাঙ্ক ফেরত দেয়।

    • heading – GPS সেন্সরের 0 থেকে 359 ডিগ্রির রিডিংয়ের উপর ভিত্তি করে রোবটটি বর্তমানে যে দিকে মুখ করে আছে তা ফেরত দেয়।

এই পৃষ্ঠার উদাহরণগুলিতে প্লেগ্রাউন্ডের ডিফল্ট শুরুর অবস্থান ব্যবহার করা হয়েছে।

ড্রাইভট্রেন#

ড্রাইভট্রেন ভিআর রোবটের চালনা ও মোড় নেওয়া নিয়ন্ত্রণ করে। ড্রাইভট্রেনটি সামনে বা পেছনে যেতে, বামে বা ডানে ঘুরতে, নির্দিষ্ট দিকে ঘুরতে এবং নিজের ঘূর্ণন অনুসরণ করতে পারে।

কর্ম#

ড্রাইভ#

ড্রাইভ drive রোবটটিকে অনির্দিষ্টকালের জন্য সামনে বা পেছনে চালায়। রোবটটি ততক্ষণ চলতে থাকবে যতক্ষণ না এটিকে মোড় নেওয়া বা থামানোর মতো অন্য কোনো কাজ দেওয়া হয়।

Usage:
drivetrain.drive(direction)

প্যারামিটার

বর্ণনা

direction

রোবটটি যেদিকে চলে: FORWARD বা REVERSE।

def main():
    # Drive forward then stop
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

ড্রাইভের জন্য#

drive_for রোবটটিকে একটি নির্দিষ্ট দূরত্ব পর্যন্ত সামনে বা পিছনে নিয়ে যায়। রোবটটির চলা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

Usage:
drivetrain.drive_for(direction, distance, units, wait)

প্যারামিটার

বর্ণনা

direction

রোবটটি যেদিকে চলে: FORWARD বা REVERSE।

distance

রোবটটি যে দূরত্ব অতিক্রম করে। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

ঐচ্ছিক। দূরত্বের একক: INCHES (ডিফল্ট) অথবা MM।

wait

ঐচ্ছিক। wait=True (ডিফল্ট) পরবর্তী কোড লাইন চলার আগে রোবটের নড়াচড়া শেষ না হওয়া পর্যন্ত প্রজেক্টকে অপেক্ষা করায়। wait=False পরবর্তী কোড লাইনকে সাথে সাথে চালিয়ে দেয়।

def main():
    # Drive forward and backward
    drivetrain.drive_for(FORWARD, 200, MM)
    drivetrain.drive_for(REVERSE, 200, MM)

# VR threads — Do not delete
vr_thread(main)

পালা#

turn রোবটটিকে অনির্দিষ্টকালের জন্য বামে বা ডানে ঘোরায়। রোবটটি ততক্ষণ ঘুরতে থাকবে যতক্ষণ না এটিকে চালানো বা থামার মতো অন্য কোনো কাজ দেওয়া হয়।

Usage:
drivetrain.turn(direction)

প্যারামিটার

বর্ণনা

direction

রোবটটি যেদিকে ঘোরে: LEFT বা RIGHT।

def main():
    # Turn right and left, then stop
    drivetrain.turn(RIGHT)
    wait(2, SECONDS)
    drivetrain.turn(LEFT)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

পালা_জন্য#

turn_for রোবটটিকে একটি নির্দিষ্ট সংখ্যক ডিগ্রিতে বামে বা ডানে ঘোরায়। এই মোড়টি রোবটের বর্তমান অবস্থানের সাপেক্ষে হয়। রোবটের মোড় নেওয়া শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

Usage:
drivetrain.turn_for(direction, angle, units, wait)

প্যারামিটার

বর্ণনা

direction

রোবটটি যেদিকে ঘোরে: LEFT বা RIGHT।

angle

রোবটটি যত ডিগ্রি ঘোরে। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

ঐচ্ছিক। ঘূর্ণন একক: DEGREES (ডিফল্ট)।

wait

ঐচ্ছিক। wait=True (ডিফল্ট) পরবর্তী কোড লাইনটি চলার আগে রোবটের ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটিকে অপেক্ষা করায়। wait=False পরবর্তী কোড লাইনটি সাথে সাথেই চালিয়ে দেয়।

def main():
    # Turn the robot right and left
    drivetrain.turn_for(RIGHT, 90, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_for(LEFT, 90, DEGREES)

# VR threads — Do not delete
vr_thread(main)

শিরোনামে ঘুরুন#

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। turn_to_heading রোবটকে -359 থেকে 359 ডিগ্রির মধ্যে একটি নির্দিষ্ট হেডিং-এর দিকে ঘোরায়। রোবটটি লক্ষ্য হেডিং-এ পৌঁছানোর জন্য সবচেয়ে ছোট পথটি বেছে নেবে।

রোবটটির প্রারম্ভিক অভিমুখ ০ ডিগ্রি।

রোবটটির ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

Usage:
drivetrain.turn_to_heading(angle, units, wait)

প্যারামিটার

বর্ণনা

angle

রোবটটি যে দিকে মুখ করবে, তা ডিগ্রিতে পরিমাপ করতে হবে। এটি integer (ফ্লোট), অথবা -৩৫৯ থেকে ৩৫৯ পর্যন্ত দশমিক (float) সংখ্যা হতে পারে।

units

ঐচ্ছিক। ঘূর্ণন একক: DEGREES (ডিফল্ট)।

wait

ঐচ্ছিক। wait=True (ডিফল্ট) পরবর্তী কোড লাইনটি চলার আগে রোবটের ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটিকে অপেক্ষা করায়। wait=False পরবর্তী কোড লাইনটি সাথে সাথেই চালিয়ে দেয়।

def main():
    # Turn to face the cardinal directions
    drivetrain.turn_to_heading(90, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_to_heading(180, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_to_heading(270, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_to_heading(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

ঘূর্ণনে পরিণত করুন#

turn_to_rotation রোবটটিকে একটি নির্দিষ্ট ঘূর্ণনে ঘোরায়।

ঘূর্ণন হল রোবটের ঘুরে যাওয়ার পরিমাণ, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রকল্পের শুরুতে, ঘূর্ণনের মান 0 ডিগ্রিতে সেট করা হয়। set_rotation পদ্ধতি ব্যবহার করেও ঘূর্ণন সেট করা যেতে পারে।

ঘূর্ণনের মান পরম। এর মানে হলো, মোড় নেওয়ার দিকটি রোবটের বর্তমান ঘূর্ণনের উপর নির্ভর করে। ডানদিকে ঘুরলে ঘূর্ণন বাড়ে এবং বামদিকে ঘুরলে ঘূর্ণন কমে।

উদাহরণস্বরূপ, যদি রোবটটি ০ ডিগ্রি থেকে শুরু করে এবং আপনি এটিকে ৭২০ ডিগ্রি ঘোরান, তবে এটি দুইবার ডানদিকে ঘুরবে। এরপর যদি আপনি এটিকে ৩৬০ ডিগ্রি ঘোরান, তবে এটি একবার বামদিকে ঘুরবে, কারণ ৩৬০ হলো ৭২০-এর চেয়ে কম।

রোবটটির ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে এবং তারপরেই কোডের পরবর্তী লাইনটি রান করবে।

Usage:
drivetrain.turn_to_rotation(angle, units, wait)

প্যারামিটার

বর্ণনা

angle

রোবটটি যে ঘূর্ণন মানে (ডিগ্রিতে) ঘুরবে। এটি integer একক) বা দশমিক (float ) হতে পারে।

units

ঐচ্ছিক। ঘূর্ণন একক: DEGREES (ডিফল্ট)।

wait

ঐচ্ছিক। wait=True (ডিফল্ট) পরবর্তী কোড লাইনটি চলার আগে রোবটের ঘোরা শেষ না হওয়া পর্যন্ত প্রজেক্টটিকে অপেক্ষা করায়। wait=False পরবর্তী কোড লাইনটি সাথে সাথেই চালিয়ে দেয়।

def main():
    # Turn left, then spin in a circle
    # clockwise and face right
    drivetrain.turn_to_rotation(-90, DEGREES)
    wait(1, SECONDS)
    drivetrain.turn_to_rotation(450, DEGREES)

# VR threads — Do not delete
vr_thread(main)

থামুন#

stop রোবটের চলাচল থামিয়ে দেয়।

Usage:
drivetrain.stop()

প্যারামিটার

বর্ণনা

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

def main():
    # Drive forward then stop
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

মিউটেটর#

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

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। set_heading রোবটের বর্তমান হেডিং পরিবর্তন করে একটি নতুন হেডিং মানে সেট করে।

উদাহরণস্বরূপ, যদি রোবটটি ডানদিকে মুখ করে থাকে, তবে হেডিং ০ ডিগ্রিতে সেট করলে সেই ডানমুখী অবস্থানটিই নতুন ০ ডিগ্রি হয়ে যায়। এরপর রোবটটি সেই নতুন হেডিং-এর উপর ভিত্তি করে অন্যান্য অবস্থানে ঘুরতে পারে।

Usage:
drivetrain.set_heading(heading, units)

প্যারামিটার

বর্ণনা

heading

রোবটের জন্য নির্ধারণ করার হেডিং ভ্যালু, ডিগ্রিতে। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

ঐচ্ছিক। শিরোনামের একক: DEGREES (ডিফল্ট)।

def main():
    # Face the new 0 degrees
    drivetrain.set_heading(90, DEGREES)
    drivetrain.turn_to_heading(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

ঘূর্ণন সেট করুন#

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

উদাহরণস্বরূপ, যদি রোবটটি ডানদিকে দুটি পূর্ণ পাক ঘুরে থাকে, তবে এর ঘূর্ণন মান হবে ৭২০ ডিগ্রি। ঘূর্ণন মান ০ ডিগ্রিতে সেট করলে তা ৭২০ থেকে ০ ডিগ্রিতে রিসেট হয়ে যাবে। এরপর রোবটটি সেই নতুন মানের উপর ভিত্তি করে ঘুরতে পারবে।

Usage:
drivetrain.set_rotation(rotation, units)

প্যারামিটার

বর্ণনা

rotation

রোবটের জন্য ঘূর্ণনের মান, ডিগ্রিতে, নির্ধারণ করতে হবে। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

ঐচ্ছিক। ঘূর্ণন একক: DEGREES (ডিফল্ট)।

def main():
    # Spin counterclockwise two times
    drivetrain.set_rotation(720, DEGREES)
    drivetrain.turn_to_rotation(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

সেট_টাইমআউট#

set_timeout নির্ধারণ করে যে রোবট একটি মুভমেন্ট শেষ করার জন্য কতটুকু সময় চেষ্টা করবে। যদি রোবট সেই সময়ের মধ্যে কাজটি শেষ করতে না পারে, তবে এটি চেষ্টা করা বন্ধ করে দেবে এবং কোডের পরবর্তী লাইনে চলে যাবে। এটি রোবটকে কোনো একটি মুভমেন্টে আটকে যাওয়া থেকে রক্ষা করে।

Usage:
drivetrain.set_timeout(value, units)

প্যারামিটার

বর্ণনা

value

রোবটটি একটি নড়াচড়া শেষ করার জন্য যে পরিমাণ সময় চেষ্টা করতে পারে। এটি একটি ধনাত্মক integer অথবা দশমিক (float ) সংখ্যা হতে পারে।

units

সময়ের একক: SECONDS বা MSEC।

def main():
    # Turn right after driving forward
    drivetrain.set_timeout(1, SECONDS)
    drivetrain.drive_for(FORWARD, 25, INCHES)
    drivetrain.turn_for(RIGHT, 90)

# VR threads — Do not delete
vr_thread(main)

সেট_ড্রাইভ_বেগ#

set_drive_velocity রোবটকে বলে দেয় সে কত দ্রুত চলবে। উচ্চতর শতাংশ রোবটকে দ্রুত চালায় এবং নিম্নতর শতাংশ রোবটকে ধীরে চালায়।

প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে চলার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা কম হতে পারে। কম বেগ রোবটকে ধীরে চলতে সাহায্য করে, কিন্তু এর নির্ভুলতা বেশি হতে পারে।

Usage:
drivetrain.set_drive_velocity(velocity, units)

প্যারামিটার

বর্ণনা

velocity

০% থেকে ১০০% পর্যন্ত চালনার বেগ। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

ঐচ্ছিক। বেগের একক: PERCENT (ডিফল্ট)।

def main():
    # Drive forward at different velocities
    # Default velocity
    drivetrain.drive_for(FORWARD, 150, MM)
    wait(1, SECONDS)
    # Drive slower
    drivetrain.set_drive_velocity(20, PERCENT)
    drivetrain.drive_for(FORWARD, 150, MM)
    wait(1, SECONDS)
    # Drive faster
    drivetrain.set_drive_velocity(100, PERCENT)
    drivetrain.drive_for(FORWARD, 150, MM)

# VR threads — Do not delete
vr_thread(main)

সেট_টার্ন_ভেলোসিটি#

set_turn_velocity set_turn_velocity রোবটকে বলে দেয় সে কত দ্রুত ঘুরবে। উচ্চতর শতাংশ রোবটকে দ্রুত ঘোরায় এবং নিম্নতর শতাংশ রোবটকে ধীরে ঘোরায়।

প্রতিটি প্রকল্প ডিফল্টরূপে রোবটের ৫০% গতিতে ঘোরার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগ রোবটকে দ্রুত ঘোরাতে পারে, কিন্তু তা কম নির্ভুল হতে পারে। নিম্ন বেগ রোবটকে ধীরে ঘোরাতে পারে, কিন্তু তা আরও নির্ভুল হতে পারে।

Usage:
drivetrain.set_turn_velocity(velocity, units)

প্যারামিটার

বর্ণনা

velocity

মোড় নেওয়ার বেগ ০% থেকে ১০০% পর্যন্ত। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

ঐচ্ছিক। বেগের একক: PERCENT (ডিফল্ট)।

def main():
    # Turn at different velocities
    # Default velocity
    drivetrain.turn_for(RIGHT, 120, DEGREES)
    wait(1, SECONDS)
    # Turn slower
    drivetrain.set_turn_velocity(20, PERCENT)
    drivetrain.turn_for(RIGHT, 120, DEGREES)
    wait(1, SECONDS)
    # Turn faster
    drivetrain.set_turn_velocity(100, PERCENT)
    drivetrain.turn_for(RIGHT, 120, DEGREES)

# VR threads — Do not delete
vr_thread(main)

গেটার্স#

শিরোনাম#

হেডিং হলো রোবটের অভিমুখ, যা ডিগ্রিতে পরিমাপ করা হয়। heading রোবটের বর্তমান হেডিং ০ থেকে ৩৫৯.৯৯ ডিগ্রি পর্যন্ত ফেরত দেয়।

রোবটটির প্রারম্ভিক অভিমুখ ০ ডিগ্রি।

Usage:
drivetrain.heading(units)

প্যারামিটার

বর্ণনা

units

ঐচ্ছিক। শিরোনামের একক: DEGREES (ডিফল্ট)।

def main():
    # Display the heading after turning
    drivetrain.turn_for(RIGHT, 450, DEGREES)
    brain.screen.print("Heading: ")
    brain.screen.print(drivetrain.heading(DEGREES))

# VR threads — Do not delete
vr_thread(main)

ঘূর্ণন#

রোবটটি কতটা ঘুরেছে, তা-ই হলো রোটেশন, যা ডিগ্রিতে পরিমাপ করা হয়। একটি প্রোজেক্টের শুরুতে, রোটেশনের মান ০ ডিগ্রিতে সেট করা থাকে। rotation রোবটটির বর্তমান রোটেশন ফেরত দেয়।

ডানদিকে ঘুরলে ঘূর্ণন বাড়ে এবং বামদিকে ঘুরলে ঘূর্ণন কমে। উদাহরণস্বরূপ, ডানদিকে দুটি পূর্ণ পাক দিলে ৭২০ ডিগ্রি ঘূর্ণন ঘটবে।

Usage:
drivetrain.rotation(units)

প্যারামিটার

বর্ণনা

units

ঐচ্ছিক। ঘূর্ণন একক: DEGREES (ডিফল্ট)।

def main():
    # Display the rotation after turning
    drivetrain.turn_for(RIGHT, 450, DEGREES)
    brain.screen.print("Rotation: ")
    brain.screen.print(drivetrain.rotation(DEGREES))

# VR threads — Do not delete
vr_thread(main)

সম্পন্ন হয়েছে#

is_done একটি বুলিয়ান মান হিসাবে ফেরত দেয় যে রোবটটির চলাচল শেষ হয়েছে কিনা। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • True — রোবটটির চলাচল শেষ হয়েছে।

  • False — রোবটটি এখনও চলছে।

এই পদ্ধতিটি নিম্নলিখিত ড্রাইভট্রেন পদ্ধতিগুলির সাথে একত্রে কাজ করে যেগুলিতে wait প্যারামিটার রয়েছে: drive_for, turn_for, turn_to_heading, এবং turn_to_rotation।

Usage:
drivetrain.is_done()

প্যারামিটার

বর্ণনা

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

চলমান#

is_moving রোবটটি চলছে কিনা তা একটি বুলিয়ান মান হিসাবে ফেরত দেয়। রোবটের চলাচলের উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • True — রোবটটি চলছে।

  • False — রোবটটি নড়ছে না।

Usage:
drivetrain.is_moving()

প্যারামিটার

বর্ণনা

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

বেগ#

বেগ velocity রোবটটি কত দ্রুত চলছে তা শতাংশ হিসাবে দেখায়, যা -100% থেকে 100% পর্যন্ত হয়ে থাকে।

Usage:
drivetrain.velocity(units)

প্যারামিটার

বর্ণনা

units

ঐচ্ছিক। বেগের একক: PERCENT (ডিফল্ট)।

উদাহরণ

def main():
    # Display the velocity after driving
    drivetrain.drive_for(FORWARD, 150, MM)
    brain.screen.print("Velocity: ")
    brain.screen.print(drivetrain.velocity(PERCENT))

গতি#

রিং এবং মোবাইল গোল পরিবহন ও স্কোর করার সুবিধার জন্য মোবি ফর্ক মোটর গ্রুপ ব্যবহার করে ফর্কগুলোকে উপরে-নিচে ওঠানামা করায়।

দিকনির্দেশনার বর্ণনাগুলো ব্যাখ্যা করে যে প্রতিটি দিক কীভাবে Moby-এর ফর্ক মোটর গ্রুপকে চালনা করে।

কর্ম#

স্পিন#

spin একটি মোটর গ্রুপকে অনির্দিষ্টকালের জন্য সামনে বা পেছনে ঘোরায়। মোটর গ্রুপটি ততক্ষণ ঘুরতে থাকবে যতক্ষণ না এটিকে অন্য কোনো নির্দেশ দেওয়া হয়, যেমন ভিন্ন দিকে ঘোরানো বা থামানো।

Usage:
fork_motor_group.spin(direction)

প্যারামিটার

বর্ণনা

direction

মোটর গ্রুপটি যেদিকে ঘোরে:

  • FORWARD — ফর্ক উপরে তোলে।
  • REVERSE — ফর্ক নিচে নামায়।

def main():
    # Spin the motor group forward then stop
    fork_motor_group.spin(FORWARD)
    wait(0.5, SECONDS)
    fork_motor_group.stop()

# VR threads — Do not delete
vr_thread(main)

স্পিন_ফর#

spin_for একটি মোটর গ্রুপকে একটি নির্দিষ্ট দূরত্বে ঘোরায়। এই ঘূর্ণনটি মোটর গ্রুপটির বর্তমান অবস্থানের সাপেক্ষে হয়। পরবর্তী কোড লাইনটি চলার আগে, মোটর গ্রুপটির ঘূর্ণন শেষ হওয়া পর্যন্ত প্রজেক্টটি অপেক্ষা করবে।

Usage:
fork_motor_group.spin_for(direction, distance, units, wait)

প্যারামিটার

বর্ণনা

direction

মোটর গ্রুপটি যেদিকে ঘোরে:

  • FORWARD — ফর্ক উপরে তোলে।
  • REVERSE — ফর্ক নিচে নামায়।

distance

মোটর গ্রুপের ঘূর্ণনের দূরত্ব। DEGREES পূর্ণসংখ্যা ব্যবহার করুন। TURNS পূর্ণসংখ্যা বা দশমিক ব্যবহার করা যেতে পারে।

units

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

wait

ঐচ্ছিক।

  • wait=True (ডিফল্ট) — পরবর্তী কোড লাইন চলার আগে মোটর গ্রুপের ঘূর্ণন শেষ না হওয়া পর্যন্ত প্রজেক্টকে অপেক্ষা করায়।
  • wait=False — পরবর্তী কোড লাইন সাথে সাথে চালিয়ে দেয়।

def main():
    # Spin the motor group forward then stop
    fork_motor_group.spin_for(FORWARD, 360, DEGREES)

# VR threads — Do not delete
vr_thread(main)

অবস্থান ঘোরানো#

spin_to_position একটি মোটর গ্রুপকে একটি নির্দিষ্ট অবস্থানে ঘোরায়।

একটি মোটর গ্রুপের অবস্থান হল এটি কতদূর ঘুরেছে, যা DEGREES বা TURNSএ পরিমাপ করা হয়। এক পাক 360 ডিগ্রির সমান। একটি প্রকল্পের শুরুতে, মোটর গ্রুপের অবস্থান 0 ডিগ্রিতে সেট করা হয়। মোটর গ্রুপের অবস্থান set_position পদ্ধতি ব্যবহার করেও সেট করা যেতে পারে।

অবস্থানের মানগুলো পরম। এর মানে হলো, ঘূর্ণনের দিক মোটর গ্রুপের বর্তমান অবস্থানের ওপর নির্ভর করে।

উদাহরণস্বরূপ, যদি মোটর গ্রুপটি ০ ডিগ্রি থেকে শুরু করে ৭২০ ডিগ্রি অবস্থানে ঘোরে, তবে এটি সামনের দিকে দুইবার ঘুরবে। এরপর যদি এটি ৩৬০ ডিগ্রি অবস্থানে ঘোরে, তবে এটি পেছনের দিকে একবার ঘুরবে, কারণ ৩৬০ হলো ৭২০-এর চেয়ে কম।

Usage:
fork_motor_group.spin_to_position(angle, units, wait)

প্যারামিটার

বর্ণনা

angle

যে অবস্থানে মোটর গ্রুপটি ঘুরবে। DEGREES পূর্ণসংখ্যা ব্যবহার করুন। TURNS পূর্ণসংখ্যা বা দশমিক ব্যবহার করা যেতে পারে।

units

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

wait

ঐচ্ছিক।

  • wait=True (ডিফল্ট) — পরবর্তী কোড লাইন চলার আগে মোটর গ্রুপের ঘূর্ণন শেষ না হওয়া পর্যন্ত প্রজেক্টকে অপেক্ষা করায়।
  • wait=False — পরবর্তী কোড লাইন সাথে সাথে চালিয়ে দেয়।

def main():
    # Spin the motor group forward then stop
    fork_motor_group.spin_to_position(55, DEGREES)

# VR threads — Do not delete
vr_thread(main)

থামুন#

stop একটি মোটর গ্রুপের ঘূর্ণন থামিয়ে দেয়।

Usage:
fork_motor_group.stop()

প্যারামিটার

বর্ণনা

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

def main():
    # Spin the motor group forward then stop
    fork_motor_group.spin(FORWARD)
    wait(0.5, SECONDS)
    fork_motor_group.stop()

# VR threads — Do not delete
vr_thread(main)

মিউটেটর#

সেট_পজিশন#

একটি মোটর গ্রুপের অবস্থান হলো এটি কতটুকু ঘুরেছে, যা DEGREES বা TURNSএককে পরিমাপ করা হয়। এক পাক ৩৬০ ডিগ্রির সমান। set_position মোটর গ্রুপের বর্তমান অবস্থানকে একটি নতুন মানে পরিবর্তন করে।

উদাহরণস্বরূপ, যদি একটি মোটর গ্রুপ ১৮০ ডিগ্রি ঘুরে থাকে, তবে এর অবস্থান ০ ডিগ্রিতে সেট করলে সেই অবস্থানটি ১৮০ থেকে ০ ডিগ্রিতে রিসেট হয়ে যাবে। এরপর মোটর গ্রুপটি সেই নতুন মানের উপর ভিত্তি করে বিভিন্ন অবস্থানে ঘুরতে পারবে।

Usage:
fork_motor_group.set_position(position, units)

প্যারামিটার

বর্ণনা

position

মোটর গ্রুপের জন্য যে পজিশন ভ্যালুটি সেট করতে হবে। DEGREES জন্য পূর্ণসংখ্যা ব্যবহার করুন। TURNS জন্য পূর্ণসংখ্যা বা দশমিক সংখ্যা ব্যবহার করা যেতে পারে।

units

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

def main():
    # Spin the motor group forward then stop
    fork_motor_group.set_position(90, DEGREES)
    fork_motor_group.spin_to_position(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

সেট_বেগ#

set_velocity একটি মোটর গ্রুপকে বলে দেয় সেটি কত দ্রুত ঘুরবে। উচ্চতর শতাংশ মোটর গ্রুপটিকে আরও দ্রুত ঘোরায় এবং নিম্নতর শতাংশ মোটর গ্রুপটিকে আরও ধীরে ঘোরায়।

প্রতিটি প্রজেক্ট ডিফল্টরূপে প্রতিটি মোটর গ্রুপ ৫০% গতিতে ঘোরার মাধ্যমে শুরু হয়।

দ্রষ্টব্য: উচ্চ বেগ মোটর গ্রুপকে দ্রুত ঘোরায়, কিন্তু তা কম নির্ভুল হতে পারে। নিম্ন বেগ মোটর গ্রুপকে ধীরে ঘোরায়, কিন্তু তা আরও নির্ভুল হতে পারে।

Usage:
fork_motor_group.set_velocity(velocity, units)

প্যারামিটার

বর্ণনা

velocity

ঘূর্ণনের বেগ ০% থেকে ১০০% পর্যন্ত। এটি একটি পূর্ণসংখ্যা integer অথবা দশমিক সংখ্যা (float ) হতে পারে।

units

বেগের একক: PERCENT।

def main():
    # Spin the motor group forward then stop
    fork_motor_group.set_velocity(75, PERCENT)
    fork_motor_group.spin_to_position(180, DEGREES)

# VR threads — Do not delete
vr_thread(main)

সেট_টাইমআউট#

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

Usage:
fork_motor_group.set_timeout(value, units)

প্যারামিটার

বর্ণনা

value

মোটর গ্রুপটি একটি নড়াচড়া শেষ করার জন্য যে পরিমাণ সময় চেষ্টা করতে পারে। এটি একটি ধনাত্মক integer অথবা দশমিক (float ) সংখ্যা হতে পারে।

units

সময়ের একক: SECONDS বা MSEC।

def main():
    # Spin the motor group forward then stop
    fork_motor_group.set_timeout(2, SECONDS)
    fork_motor_group.spin_to_position(270, DEGREES)

# VR threads — Do not delete
vr_thread(main)

গেটার্স#

সম্পন্ন হয়েছে#

is_done একটি বুলিয়ান মান হিসাবে ফেরত দেয় যে মোটর গ্রুপটির নড়াচড়া শেষ হয়েছে কিনা। মোটর গ্রুপটির নড়াচড়ার উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • True — মোটর গ্রুপটির নড়াচড়া শেষ হয়েছে।

  • False — মোটর গ্রুপটি এখনও নড়াচড়া করছে।

এই পদ্ধতিটি নিম্নলিখিত মোশন পদ্ধতিগুলির সাথে একত্রে কাজ করে যেগুলির wait প্যারামিটার রয়েছে: spin_for এবং spin_to_position।

Usage:
fork_motor_group.is_done()

প্যারামিটার

বর্ণনা

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

ঘুরছে#

is_spinning একটি বুলিয়ান মান হিসাবে ফেরত দেয় যে মোটর গ্রুপটি ঘুরছে কিনা। মোটর গ্রুপের নড়াচড়ার উপর ভিত্তি করে অন্যান্য আচরণের সময় নিয়ন্ত্রণ করতে এটি ব্যবহার করা যেতে পারে।

  • True — মোটর গ্রুপটি ঘুরছে।

  • False — মোটর গ্রুপটি ঘুরছে না।

এই পদ্ধতিটি নিম্নলিখিত মোশন পদ্ধতিগুলির সাথে একত্রে কাজ করে যেগুলির wait প্যারামিটার রয়েছে: spin_for এবং spin_to_position।

Usage:
fork_motor_group.is_spinning()

প্যারামিটার

বর্ণনা

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

অবস্থান#

একটি মোটর গ্রুপের অবস্থান হলো এটি কতটুকু ঘুরেছে, যা DEGREES বা TURNSহিসাবে পরিমাপ করা হয়। এক পাক ৩৬০ ডিগ্রির সমান। position মোটর গ্রুপটির বর্তমান অবস্থান ফেরত দেয়।

প্রজেক্টের শুরুতে, মোটর গ্রুপের অবস্থান ০ ডিগ্রিতে সেট করা থাকে। যদি মোটর গ্রুপটি সামনের দিকে এক পূর্ণ পাক ঘোরে, তাহলে এর অবস্থান হবে ৩৬০ ডিগ্রি বা ১ পাক। আর যদি মোটর গ্রুপটি বিপরীত দিকে ঘোরে, তাহলে এর অবস্থান ঋণাত্মক হবে।

Usage:
fork_motor_group.position(units)

প্যারামিটার

বর্ণনা

units

মোটর গ্রুপের অবস্থান ফেরানোর ইউনিট: DEGREES বা TURNS মোচড়।

বেগ#

velocity মোটর গ্রুপটি কত দ্রুত ঘুরছে তা নির্দেশ করে।

ধনাত্মক মান মানে মোটর গ্রুপটি সামনের দিকে ঘুরছে। ঋণাত্মক মান মানে মোটর গ্রুপটি বিপরীত দিকে ঘুরছে।

Usage:
fork_motor_group.velocity(units)

প্যারামিটার

বর্ণনা

units

ফেরত দেওয়ার বেগের একক: PERCENT।

কনসোল#

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

প্রিন্ট#

মস্তিষ্ক.স্ক্রিন.প্রিন্ট#

brain.screen.print বর্তমান কার্সার অবস্থান ব্যবহার করে কনসোলে টেক্সট, সংখ্যা বা ভেরিয়েবলের মান প্রদর্শন করে। এটি কনসোল এপিআই পৃষ্ঠার print মতো কাজ করে।

পরবর্তী মুদ্রিত মানটি একটি নতুন সারিতে শুরু করতে চাইলে brain.screen.next_row ব্যবহার করুন।

Usage:
brain.screen.print(value)

প্যারামিটার

বর্ণনা

value

কনসোলে প্রদর্শন করার জন্য টেক্সট, সংখ্যা, বা ভেরিয়েবলের মান।

def main():
    # Display a message in the Console
    brain.screen.print("Hello, robot!")

# VR threads — Do not delete
vr_thread(main)

VEXcode কনসোল, যেখানে "হ্যালো, রোবট!" লেখাটি প্রদর্শিত হচ্ছে।

brain.screen.next_row#

brain.screen.next_row কার্সারকে কনসোলের পরবর্তী সারির প্রথম কলামে নিয়ে যায়। পরবর্তী যে মানটি প্রিন্ট করা হবে, তা সেই সারিতে প্রদর্শিত হবে।

Usage:
brain.screen.next_row()

প্যারামিটার

বর্ণনা

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

def main():
    # Print on two rows
    brain.screen.print("Row 1")
    brain.screen.next_row()
    brain.screen.print("Row 2")

# VR threads — Do not delete
vr_thread(main)

VEXcode কনসোল, যেখানে কনসোলটি দেখা যাচ্ছে এবং প্রথম লাইনে "সারি 1" এবং দ্বিতীয় লাইনে "সারি 2" লেখা রয়েছে।

brain.screen.clear_screen#

brain.screen.clear_screen কনসোল থেকে সমস্ত সারি মুছে দেয় এবং কার্সারকে সারি ১-এ ফিরিয়ে নিয়ে যায়।

Usage:
brain.screen.clear_screen()

প্যারামিটার

বর্ণনা

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

def main():
    # Display text, then clear it after two seconds
    brain.screen.print("This will disappear...")
    wait(2, SECONDS)
    brain.screen.clear_screen()

# VR threads — Do not delete
vr_thread(main)

মনিটর#

মনিটর_ভেরিয়েবল#

monitor_variable VEXcode-এর মনিটর ট্যাবে এক বা একাধিক পূর্বনির্ধারিত ভেরিয়েবল যোগ করে। এর মাধ্যমে, কোনো প্রজেক্ট চলার সময় আপনি একটি ভেরিয়েবলের মানের পরিবর্তন পর্যবেক্ষণ করতে পারবেন।

সফলভাবে মনিটর করার জন্য ভেরিয়েবলগুলোকে অবশ্যই গ্লোবাল হতে হবে monitor_variable

Usage:
monitor_variable(“variable”)
monitor_variable(“variable1”, “variable2”)

প্যারামিটার

বর্ণনা

variable

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

def main():
    # Monitor the amount of loops
    global loops
    monitor_variable("loops")

    # Drive in a square 3 times
    for loops in range(12):
        drivetrain.turn_for(RIGHT, 90, DEGREES)
        drivetrain.drive_for(FORWARD, 150, MM)

# VR threads — Do not delete
vr_thread(main)

মনিটর_সেন্সর#

monitor_sensor VEXcode-এর মনিটর ট্যাবে এক বা একাধিক সেন্সর মান যোগ করে। এর মাধ্যমে, কোনো প্রজেক্ট চলার সময় আপনি সেন্সর মানগুলোর পরিবর্তন পর্যবেক্ষণ করতে পারবেন।

প্রতিটি সেন্সর মান স্ট্রিং হিসেবে প্রদান করুন।

Usage:
monitor_sensor(“sensor”)
monitor_sensor(“sensor1”, “sensor2”)

প্যারামিটার

বর্ণনা

sensor

The sensor value to monitor, given as a string. To monitor more than one sensor value, separate each sensor value with a comma. Supported sensor identifiers include:

  • Brain
    • brain.timer.time
  • Drivetrain
    • drivetrain.is_done
    • drivetrain.is_moving
    • drivetrain.heading
    • drivetrain.rotation
    • drivetrain.velocity_rpm
    • drivetrain.velocity_percent
  • Intake Motor Group
    • intake_motor_group.is_done
    • intake_motor_group.is_spinning
    • intake_motor_group.position_degrees
    • intake_motor_group.position_turns
    • intake_motor_group.velocity_rpm
    • intake_motor_group.velocity_percent
  • Fork Motor Group
    • fork_motor_group.is_done
    • fork_motor_group.is_spinning
    • fork_motor_group.position_degrees
    • fork_motor_group.position_turns
    • fork_motor_group.velocity_rpm
    • fork_motor_group.velocity_percent
  • Bottom Distance Sensor
    • bottom_distance.is_object_detected
    • bottom_distance.object_distance_mm
    • bottom_distance.object_distance_inches
  • Left Distance Sensor
    • left_distance.is_object_detected
    • left_distance.object_distance_mm
    • left_distance.object_distance_inches
  • Center Distance Sensor
    • center_distance.is_object_detected
    • center_distance.object_distance_mm
    • center_distance.object_distance_inches
  • Right Distance Sensor
    • right_distance.is_object_detected
    • right_distance.object_distance_mm
    • right_distance.object_distance_inches
  • Line Trackers
    • bottom_line_tracker.reflectivity
    • middle_line_tracker.reflectivity
    • top_line_tracker.reflectivity
  • Roller Optical Sensor
    • roller_optical.is_near_object
    • roller_optical.color
    • roller_optical.brightness
    • roller_optical.hue
  • Optical Sensor
    • optical.is_near_object
    • optical.color
    • optical.brightness
    • optical.hue
  • GPS Sensor
    • gps.position_mm
    • gps.position_inches
    • gps.heading
  • Rotation Sensor
    • rotation.angle
    • rotation.position

def main():
    # Monitor the robot's heading
    monitor_sensor("drivetrain.heading")
    drivetrain.turn_for(RIGHT, 450, DEGREES)

# VR threads — Do not delete
vr_thread(main)

সংবেদন#

অপটিক্যাল#

is_near_object#

is_near_object একটি বুলিয়ান মান রিটার্ন করে যা নির্দেশ করে যে অপটিক্যাল সেন্সরটি সীমার মধ্যে কোনো বস্তু শনাক্ত করেছে কি না।

  • True – অপটিক্যাল সেন্সরটি একটি বস্তু শনাক্ত করে।

  • False – অপটিক্যাল সেন্সরটি কোনো বস্তু শনাক্ত করতে পারছে না।

Usage:
optical.is_near_object()

প্যারামিটার

বর্ণনা

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

রঙ#

color শনাক্তকৃত হিউ মানের উপর ভিত্তি করে একটি Color ক্লাসের ইনস্ট্যান্স ফেরত দেয়। শর্তসাপেক্ষ বিবৃতি তৈরি করার জন্য এগুলোকে পূর্বনির্ধারিত Color অবজেক্টের সাথে তুলনা করা যেতে পারে।

সম্ভাব্য রংগুলো হলো:

  • NONE

  • RED - ৩৪০° থেকে ২০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • GREEN - ৮০° - ১৪০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • BLUE - ২০০° - ২৪০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • YELLOW - ৪০° - ৬০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • ORANGE - ২০° - ৪০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • PURPLE - ২৪০° - ২৮০° এর মধ্যে একটি বর্ণচ্ছটার মান

  • CYAN - ১৪০° - ২০০° এর মধ্যে একটি রঙের মান

দ্রষ্টব্য: অপটিক্যাল সেন্সরটি নির্দিষ্ট রঙের সাথে মেলে এমন হিউ রেঞ্জ খুঁজছে। নির্দিষ্ট হিউ রেঞ্জ সনাক্ত করার জন্য, hue দেখুন।

Usage:
optical.color()

প্যারামিটার

বর্ণনা

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

উজ্জ্বলতা#

brightness বস্তু থেকে প্রতিফলিত আলোর পরিমাণকে একটি দশমিক (float) হিসাবে ফেরত দেয় যা শতাংশকে প্রতিনিধিত্ব করে।

উচ্চ শতাংশের অর্থ হলো অপটিক্যাল সেন্সরে বেশি আলো প্রতিফলিত হয়। নিম্ন শতাংশের অর্থ হলো কম আলো প্রতিফলিত হয়।

Usage:
optical.brightness()

প্যারামিটার

বর্ণনা

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

রঙ#

hue সনাক্ত করা রঙের হিউ মান 0 থেকে 359 পর্যন্ত একটি দশমিক (float) হিসাবে ফেরত দেয়।

হিউ হলো কালার হুইলের সংখ্যা ব্যবহার করে রঙ বর্ণনা করার একটি পদ্ধতি।

একটি বৃত্তাকার রঙের চাকা যা রঙের একটি সম্পূর্ণ বর্ণালী প্রদর্শন করে, যার পরিধি বরাবর ডিগ্রি মান চিহ্নিত করা আছে, যা উপরের 0° থেকে 360° পর্যন্ত 30-ডিগ্রি বৃদ্ধিতে বৃদ্ধি পায়।

Usage:
optical.hue()

প্যারামিটার

বর্ণনা

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

বস্তু সনাক্ত করা হয়েছে#

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

Usage:
optical.object_detected(callback, arg)

প্যারামিটার

বর্ণনা

callback

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

arg

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

বস্তু_হারানো#

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

Usage:
optical.object_lost(callback, arg)

প্যারামিটার

বর্ণনা

callback

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

arg

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

ঘূর্ণন#

সেট_পজিশন#

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

Usage:
rotation.set_position(position, units)

প্যারামিটার

বর্ণনা

অবস্থান

ঘূর্ণন সেন্সরটি যে অবস্থানে সেট করতে হবে।

ইউনিট

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

কোণ#

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

Usage:
rotation.angle(units)

প্যারামিটার

বর্ণনা

ইউনিট

ঐচ্ছিক। কোণের একক:

  • DEGREES (ডিফল্ট) – ০ থেকে ৩৫৯.৯৯
  • TURNS

অবস্থান#

position মোট ঘূর্ণন অবস্থান ফেরত দেয়।

Usage:
rotation.position(units)

প্যারামিটার

বর্ণনা

ইউনিট

ঐচ্ছিক। অবস্থানের একক:

  • DEGREES (ডিফল্ট) – পূর্ণসংখ্যা হিসেবে ০ থেকে ৩৫৯
  • TURNS – ফ্লোট হিসেবে

জিপিএস#

x_অবস্থান#

x_position মাঠে থাকা একটি GPS (গেম পজিশনিং সিস্টেম™) সেন্সরের বর্তমান x স্থানাঙ্ক ফেরত দেয়।

Usage:
gps.x_position(units)

প্যারামিটার

বর্ণনা

ইউনিট

অফসেট মানের একক: INCHES বা MM

y_অবস্থান#

y_position মাঠে থাকা একটি GPS (গেম পজিশনিং সিস্টেম™) সেন্সরের বর্তমান y স্থানাঙ্ক ফেরত দেয়।

Usage:
gps.y_position(units)

প্যারামিটার

বর্ণনা

ইউনিট

অফসেট মানের একক: INCHES বা MM

শিরোনাম#

heading , জিপিএস (গেম পজিশনিং সিস্টেম™) সেন্সরের ০ থেকে ৩৫৯ ডিগ্রি পর্যন্ত রিডিংয়ের উপর ভিত্তি করে রোবটটির বর্তমান অভিমুখ নির্দেশ করে।

Usage:
gps.heading()

প্যারামিটার

বর্ণনা

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